diff --git a/DiscoveryJson/acceleratedmobilepageurl_v1.json b/DiscoveryJson/acceleratedmobilepageurl_v1.json index 72e1995885..5504c22074 100644 --- a/DiscoveryJson/acceleratedmobilepageurl_v1.json +++ b/DiscoveryJson/acceleratedmobilepageurl_v1.json @@ -1,54 +1,30 @@ { - "batchPath": "batch", - "id": "acceleratedmobilepageurl:v1", - "documentationLink": "https://developers.google.com/amp/cache/", - "revision": "20170504", - "title": "Accelerated Mobile Pages (AMP) URL API", - "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": "True", "resources": { "ampUrls": { "methods": { "batchGet": { + "parameters": {}, + "flatPath": "v1/ampUrls:batchGet", + "id": "acceleratedmobilepageurl.ampUrls.batchGet", + "path": "v1/ampUrls:batchGet", + "description": "Returns AMP URL(s) and equivalent\n[AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).", "request": { "$ref": "BatchGetAmpUrlsRequest" }, - "description": "Returns AMP URL(s) and equivalent\n[AMP Cache URL(s)](/amp/cache/overview#amp-cache-url-format).", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "BatchGetAmpUrlsResponse" }, - "parameters": {}, - "flatPath": "v1/ampUrls:batchGet", - "path": "v1/ampUrls:batchGet", - "id": "acceleratedmobilepageurl.ampUrls.batchGet" + "parameterOrder": [], + "httpMethod": "POST" } } } }, "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" + "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.", @@ -61,21 +37,21 @@ "type": "string" }, "pp": { - "description": "Pretty-print response.", "default": "true", "type": "boolean", - "location": "query" - }, - "oauth_token": { "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "description": "Pretty-print response." }, "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\").", @@ -88,23 +64,16 @@ "location": "query" }, "fields": { - "type": "string", "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "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", + "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" @@ -113,57 +82,33 @@ "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" } }, "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)).", - "items": { - "type": "string" - }, - "type": "array" - }, - "lookupStrategy": { - "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." - ], - "enum": [ - "FETCH_LIVE_DOC", - "IN_INDEX_DOC" - ], - "description": "The lookup_strategy being requested.", - "type": "string" - } - }, - "id": "BatchGetAmpUrlsRequest" - }, - "BatchGetAmpUrlsResponse": { - "description": "Batch AMP URL response.", - "type": "object", - "properties": { - "urlErrors": { - "items": { - "$ref": "AmpUrlError" - }, - "type": "array", - "description": "The errors for requested URLs that have no AMP URL." - }, - "ampUrls": { - "description": "For each URL in BatchAmpUrlsRequest, the URL response. The response might\nnot be in the same order as URLs in the batch request.\nIf BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated\nonly once.", - "items": { - "$ref": "AmpUrl" - }, - "type": "array" - } - }, - "id": "BatchGetAmpUrlsResponse" - }, "AmpUrl": { "description": "AMP URL response for a requested URL.", "type": "object", @@ -184,7 +129,6 @@ "id": "AmpUrl" }, "AmpUrlError": { - "id": "AmpUrlError", "description": "AMP URL Error resource for a requested URL that couldn't be found.", "type": "object", "properties": { @@ -193,10 +137,11 @@ "type": "string" }, "errorMessage": { - "type": "string", - "description": "An optional descriptive error message." + "description": "An optional descriptive error message.", + "type": "string" }, "errorCode": { + "description": "The error code of an API call.", "type": "string", "enumDescriptions": [ "Not specified error.", @@ -213,24 +158,79 @@ "APPLICATION_ERROR", "URL_IS_VALID_AMP", "URL_IS_INVALID_AMP" + ] + } + }, + "id": "AmpUrlError" + }, + "BatchGetAmpUrlsRequest": { + "type": "object", + "properties": { + "lookupStrategy": { + "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." ], - "description": "The error code of an API call." + "enum": [ + "FETCH_LIVE_DOC", + "IN_INDEX_DOC" + ] + }, + "urls": { + "description": "List of URLs to look up for the paired AMP URLs.\nThe URLs are case-sensitive. Up to 50 URLs per lookup\n(see [Usage Limits](/amp/cache/reference/limits)).", + "items": { + "type": "string" + }, + "type": "array" } - } + }, + "id": "BatchGetAmpUrlsRequest", + "description": "AMP URL request for a batch of URLs." + }, + "BatchGetAmpUrlsResponse": { + "description": "Batch AMP URL response.", + "type": "object", + "properties": { + "urlErrors": { + "items": { + "$ref": "AmpUrlError" + }, + "type": "array", + "description": "The errors for requested URLs that have no AMP URL." + }, + "ampUrls": { + "description": "For each URL in BatchAmpUrlsRequest, the URL response. The response might\nnot be in the same order as URLs in the batch request.\nIf BatchAmpUrlsRequest contains duplicate URLs, AmpUrl is generated\nonly once.", + "items": { + "$ref": "AmpUrl" + }, + "type": "array" + } + }, + "id": "BatchGetAmpUrlsResponse" } }, "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://acceleratedmobilepageurl.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Retrieves the list of AMP URL (and equivalent AMP Cache URL) for a given list of public URL(s).\n", "servicePath": "", + "description": "Retrieves the list of AMP URL (and equivalent AMP Cache URL) for a given list of public URL(s).\n", + "kind": "discovery#restDescription", "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/", "basePath": "", "ownerDomain": "google.com", - "name": "acceleratedmobilepageurl" + "name": "acceleratedmobilepageurl", + "batchPath": "batch", + "revision": "20170504", + "documentationLink": "https://developers.google.com/amp/cache/", + "id": "acceleratedmobilepageurl:v1", + "title": "Accelerated Mobile Pages (AMP) URL API", + "discoveryVersion": "v1", + "ownerName": "Google", + "version_module": "True" } diff --git a/DiscoveryJson/adexchangebuyer2_v2beta1.json b/DiscoveryJson/adexchangebuyer2_v2beta1.json index fc798f6a05..e2c622a50d 100644 --- a/DiscoveryJson/adexchangebuyer2_v2beta1.json +++ b/DiscoveryJson/adexchangebuyer2_v2beta1.json @@ -1,2157 +1,1791 @@ { + "discoveryVersion": "v1", + "version_module": "True", "schemas": { - "RemoveDealAssociationRequest": { + "RowDimensions": { + "type": "object", "properties": { - "association": { - "$ref": "CreativeDealAssociation", - "description": "The association between a creative and a deal that should be removed." + "timeInterval": { + "$ref": "TimeInterval", + "description": "The time interval that this row represents." } }, - "id": "RemoveDealAssociationRequest", - "description": "A request for removing the association between a deal and a creative.", - "type": "object" + "id": "RowDimensions", + "description": "A response may include multiple rows, breaking down along various dimensions.\nEncapsulates the values of all dimensions for a given row." }, - "ListCreativeStatusBreakdownByCreativeResponse": { - "id": "ListCreativeStatusBreakdownByCreativeResponse", - "description": "Response message for listing all creatives associated with a given filtered\nbid reason.", + "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 `{}`." + }, + "AppContext": { + "description": "@OutputOnly The app type the restriction applies to for mobile device.", "type": "object", "properties": { - "nextPageToken": { - "type": "string", - "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByCreativeRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.creatives.list\nmethod to retrieve the next page of results." - }, - "filteredBidCreativeRows": { - "description": "List of rows, with counts of bids with a given creative status aggregated\nby creative.", + "appTypes": { + "description": "The app types this restriction applies to.", "items": { - "$ref": "FilteredBidCreativeRow" + "enum": [ + "NATIVE", + "WEB" + ], + "type": "string" }, - "type": "array" + "type": "array", + "enumDescriptions": [ + "Native app context.", + "Mobile web app context." + ] } - } + }, + "id": "AppContext" }, - "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.", + "ListFilteredBidsResponse": { "type": "object", "properties": { - "clientAccountId": { - "format": "int64", - "description": "The globally-unique numerical ID of the client.\nThe value of this field is ignored in create and update operations.", - "type": "string" - }, - "entityName": { - "description": "The name of the entity. This field is automatically fetched based on\nthe type and ID.\nThe value of this field is ignored in create and update operations.", - "type": "string" - }, - "status": { - "enumDescriptions": [ - "A placeholder for an undefined client status.", - "A client that is currently disabled.", - "A client that is currently active." - ], - "enum": [ - "CLIENT_STATUS_UNSPECIFIED", - "DISABLED", - "ACTIVE" - ], - "description": "The status of the client buyer.", + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.list\nmethod to retrieve the next page of results.", "type": "string" }, - "entityType": { - "type": "string", + "creativeStatusRows": { + "items": { + "$ref": "CreativeStatusRow" + }, + "type": "array", + "description": "List of rows, with counts of filtered bids aggregated by filtering reason\n(i.e. creative status)." + } + }, + "id": "ListFilteredBidsResponse", + "description": "Response message for listing all reasons that bids were filtered from the\nauction." + }, + "SecurityContext": { + "description": "@OutputOnly A security context.", + "type": "object", + "properties": { + "securities": { + "description": "The security types in this context.", + "items": { + "enum": [ + "INSECURE", + "SSL" + ], + "type": "string" + }, + "type": "array", "enumDescriptions": [ - "A placeholder for an undefined client entity type. Should not be used.", - "An advertiser.", - "A brand.", - "An advertising agency." - ], - "enum": [ - "ENTITY_TYPE_UNSPECIFIED", - "ADVERTISER", - "BRAND", - "AGENCY" - ], - "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`." - }, - "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" + "Matches impressions that require insecure compatibility.", + "Matches impressions that require SSL compatibility." + ] + } + }, + "id": "SecurityContext" + }, + "HtmlContent": { + "description": "HTML content for a creative.", + "type": "object", + "properties": { + "width": { + "type": "integer", + "format": "int32", + "description": "The width of the HTML snippet in pixels." }, - "role": { - "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" - ], - "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`.", + "snippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page.", "type": "string" }, - "visibleToSeller": { - "description": "Whether the client buyer will be visible to sellers.", - "type": "boolean" - }, - "entityId": { - "format": "int64", - "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.", - "type": "string" + "height": { + "type": "integer", + "format": "int32", + "description": "The height of the HTML snippet in pixels." } }, - "id": "Client" + "id": "HtmlContent" }, - "Correction": { - "description": "@OutputOnly Shows any corrections that were applied to this creative.", + "ListCreativesResponse": { "type": "object", "properties": { - "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.", + "nextPageToken": { "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." - ] + "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." }, - "contexts": { - "description": "The contexts for the correction.", + "creatives": { + "description": "The list of creatives.", "items": { - "$ref": "ServingContext" + "$ref": "Creative" }, "type": "array" + } + }, + "id": "ListCreativesResponse", + "description": "A response for listing creatives." + }, + "ListFilteredBidRequestsResponse": { + "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer.", + "type": "object", + "properties": { + "calloutStatusRows": { + "items": { + "$ref": "CalloutStatusRow" + }, + "type": "array", + "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus." }, - "details": { - "description": "Additional details about what was corrected.", + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidRequestsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBidRequests.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "id": "ListFilteredBidRequestsResponse" + }, + "ListBidMetricsResponse": { + "description": "Response message for listing the metrics that are measured in number of bids.", + "type": "object", + "properties": { + "bidMetricsRows": { "items": { - "type": "string" + "$ref": "BidMetricsRow" }, - "type": "array" + "type": "array", + "description": "List of rows, each containing a set of bid metrics." + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidMetricsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidMetrics.list\nmethod to retrieve the next page of results.", + "type": "string" } }, - "id": "Correction" + "id": "ListBidMetricsResponse" }, - "FilterSet": { + "Reason": { + "description": "A specific filtering status and how many times it occurred.", "type": "object", "properties": { - "timeSeriesGranularity": { - "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." - ], - "enum": [ - "TIME_SERIES_GRANULARITY_UNSPECIFIED", - "HOURLY", - "DAILY" - ], - "description": "The granularity of time intervals if a time series breakdown is desired;\noptional." + "status": { + "format": "int32", + "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.", + "type": "integer" }, - "filterSetId": { + "count": { + "type": "string", "format": "int64", - "description": "The ID of the filter set; unique within the account of the filter set\nowner.\nThe value of this field is ignored in create operations.", - "type": "string" + "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange." + } + }, + "id": "Reason" + }, + "ListNonBillableWinningBidsResponse": { + "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", + "type": "object", + "properties": { + "nonBillableWinningBidStatusRows": { + "description": "List of rows, with counts of bids not billed aggregated by reason.", + "items": { + "$ref": "NonBillableWinningBidStatusRow" + }, + "type": "array" }, - "realtimeTimeRange": { - "$ref": "RealtimeTimeRange", - "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp." + "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\naccounts.filterSets.nonBillableWinningBids.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "id": "ListNonBillableWinningBidsResponse" + }, + "ListLosingBidsResponse": { + "description": "Response message for listing all reasons that bids lost in the auction.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "A token to retrieve the next page of results.\nPass this value in the\nListLosingBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.losingBids.list\nmethod to retrieve the next page of results." }, - "creativeId": { - "description": "The ID of the creative on which to filter; optional.", + "creativeStatusRows": { + "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).", + "items": { + "$ref": "CreativeStatusRow" + }, + "type": "array" + } + }, + "id": "ListLosingBidsResponse" + }, + "VideoContent": { + "type": "object", + "properties": { + "videoUrl": { + "description": "The URL to fetch a video ad.", "type": "string" + } + }, + "id": "VideoContent", + "description": "Video content for a creative." + }, + "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." }, - "relativeDateRange": { - "$ref": "RelativeDateRange", - "description": "A relative date range, defined by an offset from today and a duration.\nInterpreted relative to Pacific time zone." + "availableImpressions": { + "$ref": "MetricValue", + "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable." }, - "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).", + "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" + }, + "AuctionContext": { + "description": "@OutputOnly The auction type the restriction applies to.", + "type": "object", + "properties": { + "auctionTypes": { + "description": "The auction types this restriction applies to.", "items": { - "type": "string", "enum": [ - "PLATFORM_UNSPECIFIED", - "DESKTOP", - "TABLET", - "MOBILE" - ] + "OPEN_AUCTION", + "DIRECT_DEALS" + ], + "type": "string" }, - "type": "array" + "type": "array", + "enumDescriptions": [ + "The restriction applies to open auction.", + "The restriction applies to direct deals." + ] + } + }, + "id": "AuctionContext" + }, + "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\naccounts.filterSets.impressionMetrics.list\nmethod to retrieve the next page of results.", + "type": "string" }, - "sellerNetworkIds": { - "description": "The list of IDs of the seller (publisher) networks on which to filter;\nmay be empty. The filters represented by multiple seller network IDs are\nORed together (i.e. if non-empty, results must match any one of the\npublisher networks).\nSee [seller-network-ids](https://developers.google.com/ad-exchange/rtb/downloads/seller-network-ids)\nfile for the set of existing seller network IDs.", + "impressionMetricsRows": { + "description": "List of rows, each containing a set of impression metrics.", "items": { - "format": "int32", - "type": "integer" + "$ref": "ImpressionMetricsRow" }, "type": "array" + } + }, + "id": "ListImpressionMetricsResponse" + }, + "BidMetricsRow": { + "type": "object", + "properties": { + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." }, - "ownerAccountId": { - "format": "int64", - "description": "The account ID of the buyer who owns this filter set.\nThe value of this field is ignored in create operations.", - "type": "string" + "impressionsWon": { + "$ref": "MetricValue", + "description": "The number of bids that won an impression." }, - "absoluteDateRange": { - "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone.", - "$ref": "AbsoluteDateRange" + "viewableImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View)." }, - "buyerAccountId": { - "format": "int64", - "description": "The ID of the buyer account on which to filter; optional.", - "type": "string" + "measurableImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the corresponding impression was measurable\nfor viewability (as defined by Active View)." }, - "environment": { - "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." - ], - "enum": [ - "ENVIRONMENT_UNSPECIFIED", - "WEB", - "APP" - ], - "description": "The environment on which to filter; optional." + "bids": { + "$ref": "MetricValue", + "description": "The number of bids that Ad Exchange received from the buyer." }, - "format": { - "enumDescriptions": [ - "A placeholder for an undefined format; indicates that no format filter\nwill be applied.", - "The ad impression is display format (i.e. an image).", - "The ad impression is video format." - ], - "enum": [ - "FORMAT_UNSPECIFIED", - "DISPLAY", - "VIDEO" - ], - "description": "The format on which to filter; optional.", - "type": "string" + "billedImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the buyer was billed." }, - "dealId": { - "format": "int64", - "description": "The ID of the deal on which to filter; optional.", - "type": "string" + "bidsInAuction": { + "$ref": "MetricValue", + "description": "The number of bids that were permitted to compete in the auction." } }, - "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)\"" + "id": "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;" }, - "ListDealAssociationsResponse": { + "ListBidResponseErrorsResponse": { + "description": "Response message for listing all reasons that bid responses resulted in an\nerror.", "type": "object", "properties": { - "associations": { - "description": "The list of associations.", + "calloutStatusRows": { "items": { - "$ref": "CreativeDealAssociation" + "$ref": "CalloutStatusRow" }, - "type": "array" + "type": "array", + "description": "List of rows, with counts of bid responses aggregated by callout status." }, "nextPageToken": { - "type": "string", - "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." + "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponseErrorsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponseErrors.list\nmethod to retrieve the next page of results.", + "type": "string" } }, - "id": "ListDealAssociationsResponse", - "description": "A response for listing creative and deal associations" + "id": "ListBidResponseErrorsResponse" }, - "CalloutStatusRow": { - "id": "CalloutStatusRow", - "description": "The number of impressions with the specified dimension values where the\ncorresponding bid request or bid response was not successful, as described by\nthe specified callout status.", + "CreativeStatusRow": { "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": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." }, - "calloutStatusId": { + "creativeStatusId": { "format": "int32", - "description": "The ID of the callout status.\nSee [callout-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/callout-status-codes).", + "description": "The ID of the creative status.\nSee [creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).", "type": "integer" + }, + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified status." } - } + }, + "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." }, - "StopWatchingCreativeRequest": { - "description": "A request for stopping notifications for changes to creative Status.", + "RealtimeTimeRange": { + "description": "An open-ended realtime time range specified by the start timestamp.\nFor filter sets that specify a realtime time range RTB metrics continue to\nbe aggregated throughout the lifetime of the filter set.", "type": "object", - "properties": {}, - "id": "StopWatchingCreativeRequest" + "properties": { + "startTimestamp": { + "type": "string", + "format": "google-datetime", + "description": "The start timestamp of the real-time RTB metrics aggregation." + } + }, + "id": "RealtimeTimeRange" }, - "Disapproval": { - "description": "@OutputOnly The reason and details for a disapproval.", + "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": { - "details": { - "items": { - "type": "string" - }, - "type": "array", - "description": "Additional details about the reason for disapproval." - }, - "reason": { + "status": { + "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." + "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": [ - "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" + "STATUS_UNSPECIFIED", + "AD_NOT_RENDERED", + "INVALID_IMPRESSION" ], - "description": "The categorized reason for disapproval.", - "type": "string" + "description": "The status specifying why the winning bids were not billed." + }, + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + }, + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified status." } }, - "id": "Disapproval" + "id": "NonBillableWinningBidStatusRow" }, - "ServingRestriction": { + "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": { - "disapprovalReasons": { - "description": "Any disapprovals bound to this restriction.\nOnly present if status=DISAPPROVED.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "items": { - "$ref": "Disapproval" - }, - "type": "array" + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." }, - "contexts": { - "description": "The contexts for the restriction.", - "items": { - "$ref": "ServingContext" - }, - "type": "array" + "detailId": { + "type": "integer", + "format": "int32", + "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." }, - "status": { - "description": "The status of the creative in this context (for example, it has been\nexplicitly disapproved or is pending review).", - "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" - ] + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified detail." } }, - "id": "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" + "id": "FilteredBidDetailRow" }, - "Date": { - "id": "Date", - "description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.", + "AbsoluteDateRange": { "type": "object", "properties": { - "day": { - "format": "int32", - "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.", - "type": "integer" - }, - "year": { - "format": "int32", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "type": "integer" + "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." }, - "month": { - "format": "int32", - "description": "Month of year. Must be from 1 to 12.", - "type": "integer" + "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." }, - "RowDimensions": { - "description": "A response may include multiple rows, breaking down along various dimensions.\nEncapsulates the values of all dimensions for a given row.", + "AddDealAssociationRequest": { "type": "object", "properties": { - "timeInterval": { - "description": "The time interval that this row represents.", - "$ref": "TimeInterval" + "association": { + "$ref": "CreativeDealAssociation", + "description": "The association between a creative and a deal that should be added." } }, - "id": "RowDimensions" - }, - "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": "AddDealAssociationRequest", + "description": "A request for associating a deal and a creative." }, - "AppContext": { - "description": "@OutputOnly The app type the restriction applies to for mobile device.", + "WatchCreativeRequest": { "type": "object", "properties": { - "appTypes": { - "enumDescriptions": [ - "Native app context.", - "Mobile web app context." - ], - "description": "The app types this restriction applies to.", - "items": { - "type": "string", - "enum": [ - "NATIVE", - "WEB" - ] - }, - "type": "array" + "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." } }, - "id": "AppContext" + "id": "WatchCreativeRequest", + "description": "A request for watching changes to creative Status." }, - "ListFilteredBidsResponse": { - "description": "Response message for listing all reasons that bids were filtered from the\nauction.", + "TimeInterval": { + "description": "An interval of time, with an absolute start and end.\nThis is included in the response, for several reasons:\n1) The request may have specified start or end times relative to the time the\n request was sent; the response indicates the corresponding absolute time\n interval.\n2) The request may have specified an end time past the latest time for which\n data was available (e.g. if requesting data for the today); the response\n indicates the latest time for which data was actually returned.\n3) The response data for a single request may be broken down into multiple\n time intervals, if a time series was requested.", "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\naccounts.filterSets.filteredBids.list\nmethod to retrieve the next page of results.", + "endTime": { + "format": "google-datetime", + "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.", "type": "string" }, - "creativeStatusRows": { - "description": "List of rows, with counts of filtered bids aggregated by filtering reason\n(i.e. creative status).", - "items": { - "$ref": "CreativeStatusRow" - }, - "type": "array" + "startTime": { + "format": "google-datetime", + "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.", + "type": "string" } }, - "id": "ListFilteredBidsResponse" + "id": "TimeInterval" }, - "SecurityContext": { - "id": "SecurityContext", - "description": "@OutputOnly A security context.", + "FilteredBidCreativeRow": { "type": "object", "properties": { - "securities": { - "enumDescriptions": [ - "Matches impressions that require insecure compatibility.", - "Matches impressions that require SSL compatibility." - ], - "description": "The security types in this context.", - "items": { - "type": "string", - "enum": [ - "INSECURE", - "SSL" - ] - }, - "type": "array" + "creativeId": { + "description": "The ID of the creative.", + "type": "string" + }, + "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." } - } + }, + "id": "FilteredBidCreativeRow", + "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative." }, - "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": { + "durationDays": { "format": "int32", - "description": "The width of the HTML snippet in pixels.", + "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.", "type": "integer" }, - "snippet": { - "description": "The HTML snippet that displays the ad when inserted in the web page.", - "type": "string" - }, - "height": { + "offsetDays": { "format": "int32", - "description": "The height of the HTML snippet in pixels.", + "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.", "type": "integer" } }, - "id": "HtmlContent", - "description": "HTML content for a creative.", - "type": "object" + "id": "RelativeDateRange" }, - "ListCreativesResponse": { + "ListClientsResponse": { "type": "object", "properties": { "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativesRequest.page_token\nfield in the subsequent call to `ListCreatives` method to retrieve the next\npage of results.", + "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.", "type": "string" }, - "creatives": { - "description": "The list of creatives.", + "clients": { + "description": "The returned list of clients.", "items": { - "$ref": "Creative" + "$ref": "Client" }, "type": "array" } }, - "id": "ListCreativesResponse", - "description": "A response for listing creatives." + "id": "ListClientsResponse" }, - "ListFilteredBidRequestsResponse": { - "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer.", + "NativeContent": { + "description": "Native content for a creative.", "type": "object", "properties": { - "calloutStatusRows": { - "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus.", - "items": { - "$ref": "CalloutStatusRow" - }, - "type": "array" + "advertiserName": { + "type": "string", + "description": "The name of the advertiser or sponsor, to be displayed in the ad creative." }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidRequestsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBidRequests.list\nmethod to retrieve the next page of results.", + "storeUrl": { + "type": "string", + "description": "The URL to the app store to purchase/download the promoted app." + }, + "headline": { + "description": "A short title for the ad.", "type": "string" - } - }, - "id": "ListFilteredBidRequestsResponse" - }, - "ListBidMetricsResponse": { - "properties": { - "bidMetricsRows": { - "description": "List of rows, each containing a set of bid metrics.", - "items": { - "$ref": "BidMetricsRow" - }, - "type": "array" }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidMetricsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidMetrics.list\nmethod to retrieve the next page of results.", + "appIcon": { + "$ref": "Image", + "description": "The app icon, for app download ads." + }, + "callToAction": { + "type": "string", + "description": "A label for the button that the user is supposed to click." + }, + "body": { + "type": "string", + "description": "A long description of the ad." + }, + "starRating": { + "format": "double", + "description": "The app rating in the app store. Must be in the range [0-5].", + "type": "number" + }, + "videoUrl": { + "type": "string", + "description": "The URL to fetch a native video ad." + }, + "logo": { + "$ref": "Image", + "description": "A smaller image, for the advertiser's logo." + }, + "clickLinkUrl": { + "description": "The URL that the browser/SDK will load when the user clicks the ad.", + "type": "string" + }, + "priceDisplayText": { + "type": "string", + "description": "The price of the promoted app including currency info." + }, + "image": { + "$ref": "Image", + "description": "A large image." + }, + "clickTrackingUrl": { + "description": "The URL to use for click tracking.", "type": "string" } }, - "id": "ListBidMetricsResponse", - "description": "Response message for listing the metrics that are measured in number of bids.", - "type": "object" + "id": "NativeContent" }, - "Reason": { - "description": "A specific filtering status and how many times it occurred.", + "ListBidResponsesWithoutBidsResponse": { "type": "object", "properties": { - "status": { - "type": "integer", - "format": "int32", - "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." - }, - "count": { - "format": "int64", - "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange.", + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponsesWithoutBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod to retrieve the next page of results.", "type": "string" + }, + "bidResponseWithoutBidsStatusRows": { + "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus.", + "items": { + "$ref": "BidResponseWithoutBidsStatusRow" + }, + "type": "array" } }, - "id": "Reason" + "id": "ListBidResponsesWithoutBidsResponse", + "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids." }, - "VideoContent": { - "description": "Video content for a creative.", + "ServingContext": { + "description": "The serving context for this restriction.", "type": "object", "properties": { - "videoUrl": { - "description": "The URL to fetch a video ad.", - "type": "string" + "all": { + "enum": [ + "SIMPLE_CONTEXT" + ], + "description": "Matches all contexts.", + "type": "string", + "enumDescriptions": [ + "A simple context." + ] + }, + "appType": { + "$ref": "AppContext", + "description": "Matches impressions for a particular app type." + }, + "securityType": { + "$ref": "SecurityContext", + "description": "Matches impressions for a particular security type." + }, + "platform": { + "$ref": "PlatformContext", + "description": "Matches impressions coming from a particular platform." + }, + "location": { + "$ref": "LocationContext", + "description": "Matches impressions coming from users *or* publishers in a specific\nlocation." + }, + "auctionType": { + "$ref": "AuctionContext", + "description": "Matches impressions for a particular auction type." } }, - "id": "VideoContent" + "id": "ServingContext" }, - "ListLosingBidsResponse": { - "description": "Response message for listing all reasons that bids lost in the auction.", + "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": { - "creativeStatusRows": { - "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).", - "items": { - "$ref": "CreativeStatusRow" - }, - "type": "array" + "height": { + "type": "integer", + "format": "int32", + "description": "Image height in pixels." }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListLosingBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.losingBids.list\nmethod to retrieve the next page of results.", - "type": "string" + "width": { + "type": "integer", + "format": "int32", + "description": "Image width in pixels." + }, + "url": { + "type": "string", + "description": "The URL of the image." } }, - "id": "ListLosingBidsResponse" + "id": "Image" }, - "ListNonBillableWinningBidsResponse": { - "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", + "ListFilterSetsResponse": { "type": "object", "properties": { - "nonBillableWinningBidStatusRows": { - "description": "List of rows, with counts of bids not billed aggregated by reason.", + "filterSets": { "items": { - "$ref": "NonBillableWinningBidStatusRow" + "$ref": "FilterSet" }, - "type": "array" + "type": "array", + "description": "The filter sets belonging to the buyer." }, "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\naccounts.filterSets.nonBillableWinningBids.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": "ListNonBillableWinningBidsResponse" + "id": "ListFilterSetsResponse", + "description": "Response message for listing filter sets." }, - "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.", + "BidResponseWithoutBidsStatusRow": { "type": "object", "properties": { - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - }, - "availableImpressions": { - "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable.", - "$ref": "MetricValue" + "impressionCount": { + "$ref": "MetricValue", + "description": "The number of impressions for which there was a bid response with the\nspecified status." }, - "bidRequests": { - "description": "The number of impressions for which Ad Exchange sent the buyer a bid\nrequest.", - "$ref": "MetricValue" + "status": { + "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", + "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." + ] }, - "inventoryMatches": { - "description": "The number of impressions that match the buyer's inventory pretargeting.", - "$ref": "MetricValue" + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + } + }, + "id": "BidResponseWithoutBidsStatusRow", + "description": "The number of impressions with the specified dimension values that were\nconsidered to have no applicable bids, as described by the specified status." + }, + "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": { + "clientAccountId": { + "format": "int64", + "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.", + "type": "string" }, - "responsesWithBids": { - "$ref": "MetricValue", - "description": "The number of impressions for which Ad Exchange received a response from\nthe buyer that contained at least one applicable bid." + "invitationId": { + "format": "int64", + "description": "The unique numerical ID of the invitation that is sent to the user.\nThe value of this field is ignored in create operations.", + "type": "string" }, - "successfulResponses": { - "$ref": "MetricValue", - "description": "The number of impressions for which the buyer successfully sent a response\nto Ad Exchange." + "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" } }, - "id": "ImpressionMetricsRow" + "id": "ClientUserInvitation" }, - "AuctionContext": { - "description": "@OutputOnly The auction type the restriction applies to.", + "ListCreativeStatusBreakdownByDetailResponse": { "type": "object", "properties": { - "auctionTypes": { - "description": "The auction types this restriction applies to.", + "detailType": { + "type": "string", + "enumDescriptions": [ + "A placeholder for an undefined status.\nThis value will never be returned in responses.", + "Indicates that the detail ID refers to a creative attribute; see\n[publisher-excludable-creative-attributes](https://developers.google.com/ad-exchange/rtb/downloads/publisher-excludable-creative-attributes).", + "Indicates that the detail ID refers to a vendor; see\n[vendors](https://developers.google.com/ad-exchange/rtb/downloads/vendors).", + "Indicates that the detail ID refers to a sensitive category; see\n[ad-sensitive-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-sensitive-categories).", + "Indicates that the detail ID refers to a product category; see\n[ad-product-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-product-categories)." + ], + "enum": [ + "DETAIL_TYPE_UNSPECIFIED", + "CREATIVE_ATTRIBUTE", + "VENDOR", + "SENSITIVE_CATEGORY", + "PRODUCT_CATEGORY" + ], + "description": "The type of detail that the detail IDs represent." + }, + "nextPageToken": { + "type": "string", + "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByDetailRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.details.list\nmethod to retrieve the next page of results." + }, + "filteredBidDetailRows": { "items": { - "enum": [ - "OPEN_AUCTION", - "DIRECT_DEALS" - ], - "type": "string" + "$ref": "FilteredBidDetailRow" }, "type": "array", - "enumDescriptions": [ - "The restriction applies to open auction.", - "The restriction applies to direct deals." - ] + "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail." } }, - "id": "AuctionContext" + "id": "ListCreativeStatusBreakdownByDetailResponse", + "description": "Response message for listing all details associated with a given filtered bid\nreason." }, - "ListImpressionMetricsResponse": { - "description": "Response message for listing the metrics that are measured in number of\nimpressions.", + "ListClientUsersResponse": { "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\naccounts.filterSets.impressionMetrics.list\nmethod to retrieve the next page of results.", - "type": "string" + "type": "string", + "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." }, - "impressionMetricsRows": { - "description": "List of rows, each containing a set of impression metrics.", + "users": { + "description": "The returned list of client users.", "items": { - "$ref": "ImpressionMetricsRow" + "$ref": "ClientUser" }, "type": "array" } }, - "id": "ListImpressionMetricsResponse" + "id": "ListClientUsersResponse" }, - "BidMetricsRow": { + "ListClientUserInvitationsResponse": { "type": "object", "properties": { - "viewableImpressions": { - "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View).", - "$ref": "MetricValue" - }, - "impressionsWon": { - "description": "The number of bids that won an impression.", - "$ref": "MetricValue" - }, - "measurableImpressions": { - "$ref": "MetricValue", - "description": "The number of bids for which the corresponding impression was measurable\nfor viewability (as defined by Active View)." - }, - "bids": { - "$ref": "MetricValue", - "description": "The number of bids that Ad Exchange received from the buyer." - }, - "billedImpressions": { - "description": "The number of bids for which the buyer was billed.", - "$ref": "MetricValue" - }, - "bidsInAuction": { - "$ref": "MetricValue", - "description": "The number of bids that were permitted to compete in the auction." + "nextPageToken": { + "type": "string", + "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." }, - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" + "invitations": { + "description": "The returned list of client users.", + "items": { + "$ref": "ClientUserInvitation" + }, + "type": "array" } }, - "id": "BidMetricsRow", - "description": "The set of metrics that are measured in numbers of bids, representing how\nmany bids with the specified dimension values were considered eligible at\neach stage of the bidding funnel;" + "id": "ListClientUserInvitationsResponse" }, - "ListBidResponseErrorsResponse": { + "LocationContext": { + "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.", "items": { - "$ref": "CalloutStatusRow" + "type": "integer", + "format": "int32" }, "type": "array" - }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponseErrorsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponseErrors.list\nmethod to retrieve the next page of results.", - "type": "string" } }, - "id": "ListBidResponseErrorsResponse", - "description": "Response message for listing all reasons that bid responses resulted in an\nerror.", - "type": "object" + "id": "LocationContext", + "description": "@OutputOnly The Geo criteria the restriction applies to." }, - "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": { - "type": "integer", - "format": "int32", - "description": "The ID of the creative status.\nSee [creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes)." - }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified status." + "platforms": { + "items": { + "enum": [ + "DESKTOP", + "ANDROID", + "IOS" + ], + "type": "string" + }, + "type": "array", + "enumDescriptions": [ + "Desktop platform.", + "Android platform.", + "iOS platform." + ], + "description": "The platforms this restriction applies to." } }, - "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": { + "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": { - "format": "google-datetime", - "description": "The start timestamp of the real-time RTB metrics aggregation.", - "type": "string" + "variance": { + "type": "string", + "format": "int64", + "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" + }, + "value": { + "type": "string", + "format": "int64", + "description": "The expected value of the metric." } }, - "id": "RealtimeTimeRange" + "id": "MetricValue" }, - "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.", + "ClientUser": { "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.", - "type": "string" + "description": "The status of the client user." }, - "rowDimensions": { - "description": "The values of all dimensions associated with metric values in this row.", - "$ref": "RowDimensions" + "email": { + "type": "string", + "description": "User's email address. The value of this field\nis ignored in an update operation." }, - "bidCount": { - "description": "The number of bids with the specified status.", - "$ref": "MetricValue" + "userId": { + "type": "string", + "format": "int64", + "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." + }, + "clientAccountId": { + "type": "string", + "format": "int64", + "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." } }, - "id": "NonBillableWinningBidStatusRow" + "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." }, - "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.", + "CreativeDealAssociation": { + "description": "The association between a creative and a deal.", "type": "object", "properties": { - "detailId": { - "type": "integer", - "format": "int32", - "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." + "creativeId": { + "type": "string", + "description": "The ID of the creative associated with the deal." }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified detail." + "dealsId": { + "type": "string", + "description": "The externalDealId for the deal associated with the creative." }, - "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" } }, - "id": "FilteredBidDetailRow" + "id": "CreativeDealAssociation" }, - "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.", + "FilteringStats": { "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": { - "description": "The start date of the range (inclusive).\nMust be within the 30 days leading up to current date, and must be equal to\nor before end_date.", - "$ref": "Date" - } - }, - "id": "AbsoluteDateRange" - }, - "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" - } - } - }, - "WatchCreativeRequest": { - "properties": { - "topic": { - "description": "The Pub/Sub topic to publish notifications to.\nThis topic must already exist and must give permission to\nad-exchange-buyside-reports@google.com to write to the topic.\nThis should be the full resource name in\n\"projects/{project_id}/topics/{topic_id}\" format.", - "type": "string" - } - }, - "id": "WatchCreativeRequest", - "description": "A request for watching changes to creative Status.", - "type": "object" - }, - "TimeInterval": { - "properties": { - "endTime": { - "format": "google-datetime", - "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.", - "type": "string" + "reasons": { + "items": { + "$ref": "Reason" + }, + "type": "array", + "description": "The set of filtering reasons for this date." }, - "startTime": { - "format": "google-datetime", - "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.", - "type": "string" + "date": { + "$ref": "Date", + "description": "The day during which the data was collected.\nThe data is collected from 00:00:00 to 23:59:59 PT.\nDuring switches from PST to PDT and back, the day may\ncontain 23 or 25 hours of data instead of the usual 24." } }, - "id": "TimeInterval", - "description": "An interval of time, with an absolute start and end.\nThis is included in the response, for several reasons:\n1) The request may have specified start or end times relative to the time the\n request was sent; the response indicates the corresponding absolute time\n interval.\n2) The request may have specified an end time past the latest time for which\n data was available (e.g. if requesting data for the today); the response\n indicates the latest time for which data was actually returned.\n3) The response data for a single request may be broken down into multiple\n time intervals, if a time series was requested.", - "type": "object" + "id": "FilteringStats", + "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific)." }, - "FilteredBidCreativeRow": { + "Creative": { "type": "object", "properties": { - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified creative." + "detectedDomains": { + "description": "@OutputOnly\nThe detected domains for this creative.", + "items": { + "type": "string" + }, + "type": "array" }, - "creativeId": { - "description": "The ID of the creative.", - "type": "string" + "detectedAdvertiserIds": { + "items": { + "format": "int64", + "type": "string" + }, + "type": "array", + "description": "@OutputOnly Detected advertiser IDs, if any." }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - } - }, - "id": "FilteredBidCreativeRow", - "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative." - }, - "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": { - "durationDays": { - "format": "int32", - "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.", - "type": "integer" + "filteringStats": { + "$ref": "FilteringStats", + "description": "@OutputOnly The filtering stats for this creative." }, - "offsetDays": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "RelativeDateRange" - }, - "NativeContent": { - "description": "Native content for a creative.", - "type": "object", - "properties": { - "videoUrl": { - "description": "The URL to fetch a native video ad.", - "type": "string" + "attributes": { + "items": { + "enum": [ + "ATTRIBUTE_UNSPECIFIED", + "IS_TAGGED", + "IS_COOKIE_TARGETED", + "IS_USER_INTEREST_TARGETED", + "EXPANDING_DIRECTION_NONE", + "EXPANDING_DIRECTION_UP", + "EXPANDING_DIRECTION_DOWN", + "EXPANDING_DIRECTION_LEFT", + "EXPANDING_DIRECTION_RIGHT", + "EXPANDING_DIRECTION_UP_LEFT", + "EXPANDING_DIRECTION_UP_RIGHT", + "EXPANDING_DIRECTION_DOWN_LEFT", + "EXPANDING_DIRECTION_DOWN_RIGHT", + "EXPANDING_DIRECTION_UP_OR_DOWN", + "EXPANDING_DIRECTION_LEFT_OR_RIGHT", + "EXPANDING_DIRECTION_ANY_DIAGONAL", + "EXPANDING_ACTION_ROLLOVER_TO_EXPAND", + "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH", + "RICH_MEDIA_CAPABILITY_TYPE_MRAID", + "RICH_MEDIA_CAPABILITY_TYPE_SSL", + "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL", + "NATIVE_ELIGIBILITY_ELIGIBLE", + "NATIVE_ELIGIBILITY_NOT_ELIGIBLE", + "RENDERING_SIZELESS_ADX" + ], + "type": "string" + }, + "type": "array", + "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." }, - "clickLinkUrl": { - "description": "The URL that the browser/SDK will load when the user clicks the ad.", + "apiUpdateTime": { + "format": "google-datetime", + "description": "@OutputOnly The last update timestamp of the creative via API.", "type": "string" }, - "logo": { - "$ref": "Image", - "description": "A smaller image, for the advertiser's logo." + "detectedLanguages": { + "description": "@OutputOnly\nThe detected languages for this creative. The order is arbitrary. The codes\nare 2 or 5 characters and are documented at\nhttps://developers.google.com/adwords/api/docs/appendix/languagecodes.", + "items": { + "type": "string" + }, + "type": "array" }, - "priceDisplayText": { - "description": "The price of the promoted app including currency info.", + "creativeId": { + "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", "type": "string" }, - "clickTrackingUrl": { - "description": "The URL to use for click tracking.", + "accountId": { + "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", "type": "string" }, - "image": { - "description": "A large image.", - "$ref": "Image" - }, - "advertiserName": { - "type": "string", - "description": "The name of the advertiser or sponsor, to be displayed in the ad creative." - }, - "storeUrl": { - "description": "The URL to the app store to purchase/download the promoted app.", - "type": "string" + "native": { + "$ref": "NativeContent", + "description": "A native creative." }, - "headline": { - "description": "A short title for the ad.", - "type": "string" + "servingRestrictions": { + "items": { + "$ref": "ServingRestriction" + }, + "type": "array", + "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)." }, - "appIcon": { - "description": "The app icon, for app download ads.", - "$ref": "Image" + "video": { + "$ref": "VideoContent", + "description": "A video creative." }, - "callToAction": { - "description": "A label for the button that the user is supposed to click.", + "agencyId": { + "format": "int64", + "description": "The agency ID for this creative.", "type": "string" }, - "body": { - "description": "A long description of the ad.", - "type": "string" + "clickThroughUrls": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The set of destination URLs for the creative." }, - "starRating": { - "format": "double", - "description": "The app rating in the app store. Must be in the range [0-5].", - "type": "number" - } - }, - "id": "NativeContent" - }, - "ListClientsResponse": { - "type": "object", - "properties": { - "clients": { - "description": "The returned list of clients.", + "detectedSensitiveCategories": { + "description": "@OutputOnly Detected sensitive categories, if any.\nSee the ad-sensitive-categories.txt file in the technical documentation for\na list of IDs. You should use these IDs along with the\nexcluded-sensitive-category field in the bid request to filter your bids.", "items": { - "$ref": "Client" + "type": "integer", + "format": "int32" }, "type": "array" }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListClientsResponse" - }, - "ListBidResponsesWithoutBidsResponse": { - "type": "object", - "properties": { - "nextPageToken": { + "adChoicesDestinationUrl": { "type": "string", - "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponsesWithoutBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod to retrieve the next page of results." + "description": "The link to AdChoices destination page." }, - "bidResponseWithoutBidsStatusRows": { - "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus.", + "restrictedCategories": { "items": { - "$ref": "BidResponseWithoutBidsStatusRow" + "type": "string", + "enum": [ + "NO_RESTRICTED_CATEGORIES", + "ALCOHOL" + ] }, - "type": "array" - } - }, - "id": "ListBidResponsesWithoutBidsResponse", - "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids." - }, - "ServingContext": { - "type": "object", - "properties": { - "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": { - "description": "Matches all contexts.", - "type": "string", + "type": "array", "enumDescriptions": [ - "A simple context." + "The ad has no restricted categories", + "The alcohol restricted category." ], - "enum": [ - "SIMPLE_CONTEXT" - ] + "description": "All restricted categories for the ads that may be shown from this creative." }, - "appType": { - "$ref": "AppContext", - "description": "Matches impressions for a particular app type." + "corrections": { + "items": { + "$ref": "Correction" + }, + "type": "array", + "description": "@OutputOnly Shows any corrections that were applied to this creative." }, - "securityType": { - "$ref": "SecurityContext", - "description": "Matches impressions for a particular security type." - } - }, - "id": "ServingContext", - "description": "The serving context for this restriction." - }, - "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": { - "width": { + "version": { "format": "int32", - "description": "Image width in pixels.", + "description": "@OutputOnly The version of this creative.", "type": "integer" }, - "url": { - "description": "The URL of the image.", - "type": "string" - }, - "height": { - "format": "int32", - "description": "Image height in pixels.", - "type": "integer" - } - }, - "id": "Image" - }, - "ListFilterSetsResponse": { - "description": "Response message for listing filter sets.", - "type": "object", - "properties": { - "filterSets": { - "description": "The filter sets belonging to the buyer.", + "vendorIds": { + "description": "All vendor IDs for the ads that may be shown from this creative.\nSee https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt\nfor possible values.", "items": { - "$ref": "FilterSet" + "type": "integer", + "format": "int32" }, "type": "array" }, - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilterSetsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.list\nmethod to retrieve the next page of results.", - "type": "string" - } - }, - "id": "ListFilterSetsResponse" - }, - "BidResponseWithoutBidsStatusRow": { - "type": "object", - "properties": { - "impressionCount": { - "$ref": "MetricValue", - "description": "The number of impressions for which there was a bid response with the\nspecified status." + "impressionTrackingUrls": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The set of URLs to be called to record an impression." }, - "status": { - "description": "The status specifying why the bid responses were considered to have no\napplicable bids.", + "html": { + "$ref": "HtmlContent", + "description": "An HTML creative." + }, + "dealsStatus": { "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 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", - "RESPONSES_WITHOUT_BIDS", - "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT", - "RESPONSES_WITHOUT_BIDS_FOR_DEAL" + "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": { + "description": "@OutputOnly Detected product categories, if any.\nSee the ad-product-categories.txt file in the technical documentation\nfor a list of IDs.", + "items": { + "type": "integer", + "format": "int32" + }, + "type": "array" + }, + "openAuctionStatus": { + "enum": [ + "STATUS_UNSPECIFIED", + "NOT_CHECKED", + "CONDITIONALLY_APPROVED", + "APPROVED", + "DISAPPROVED" + ], + "description": "@OutputOnly The top-level open auction status of this creative.\nIf disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in\nserving_restrictions will also exist. Note\nthat this may be nuanced with other contextual restrictions, in which case,\nit may be preferable to read from serving_restrictions directly.\nCan be used to filter the response of the\ncreatives.list\nmethod.", + "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." ] }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." + "advertiserName": { + "description": "The name of the company being advertised in the creative.", + "type": "string" } }, - "id": "BidResponseWithoutBidsStatusRow", - "description": "The number of impressions with the specified dimension values that were\nconsidered to have no applicable bids, as described by the specified status." + "id": "Creative", + "description": "A creative and its classification data." }, - "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.", + "RemoveDealAssociationRequest": { + "description": "A request for removing the association between a deal and a creative.", "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": { - "format": "int64", - "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.", - "type": "string" - }, - "invitationId": { - "format": "int64", - "description": "The unique numerical ID of the invitation that is sent to the user.\nThe value of this field is ignored in create operations.", - "type": "string" + "association": { + "$ref": "CreativeDealAssociation", + "description": "The association between a creative and a deal that should be removed." } }, - "id": "ClientUserInvitation" + "id": "RemoveDealAssociationRequest" }, - "ListClientUserInvitationsResponse": { + "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": { - "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.", + "role": { + "enum": [ + "CLIENT_ROLE_UNSPECIFIED", + "CLIENT_DEAL_VIEWER", + "CLIENT_DEAL_NEGOTIATOR", + "CLIENT_DEAL_APPROVER" + ], + "description": "The role which is assigned to the client buyer. Each role implies a set of\npermissions granted to the client. Must be one of `CLIENT_DEAL_VIEWER`,\n`CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.", + "type": "string", + "enumDescriptions": [ + "A placeholder for an undefined client role.", + "Users associated with this client can see publisher deal offers\nin the Marketplace.\nThey can neither negotiate proposals nor approve deals.\nIf this client is visible to publishers, they can send deal proposals\nto this client.", + "Users associated with this client can respond to deal proposals\nsent to them by publishers. They can also initiate deal proposals\nof their own.", + "Users associated with this client can approve eligible deals\non your behalf. Some deals may still explicitly require publisher\nfinalization. If this role is not selected, the sponsor buyer\nwill need to manually approve each of their deals." + ] + }, + "visibleToSeller": { + "description": "Whether the client buyer will be visible to sellers.", + "type": "boolean" + }, + "entityId": { + "type": "string", + "format": "int64", + "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." + }, + "clientAccountId": { + "format": "int64", + "description": "The globally-unique numerical ID of the client.\nThe value of this field is ignored in create and update operations.", "type": "string" }, - "invitations": { - "description": "The returned list of client users.", - "items": { - "$ref": "ClientUserInvitation" - }, - "type": "array" - } - }, - "id": "ListClientUserInvitationsResponse" - }, - "ListClientUsersResponse": { - "properties": { - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUsersRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.", + "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" }, - "users": { - "description": "The returned list of client users.", - "items": { - "$ref": "ClientUser" - }, - "type": "array" - } - }, - "id": "ListClientUsersResponse", - "type": "object" - }, - "ListCreativeStatusBreakdownByDetailResponse": { - "properties": { - "nextPageToken": { + "status": { "type": "string", - "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByDetailRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.details.list\nmethod to retrieve the next page of results." - }, - "filteredBidDetailRows": { - "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.", - "items": { - "$ref": "FilteredBidDetailRow" - }, - "type": "array" + "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." }, - "detailType": { + "entityType": { "enum": [ - "DETAIL_TYPE_UNSPECIFIED", - "CREATIVE_ATTRIBUTE", - "VENDOR", - "SENSITIVE_CATEGORY", - "PRODUCT_CATEGORY" + "ENTITY_TYPE_UNSPECIFIED", + "ADVERTISER", + "BRAND", + "AGENCY" ], - "description": "The type of detail that the detail IDs represent.", + "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.", "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)." + "A placeholder for an undefined client entity type. Should not be used.", + "An advertiser.", + "A brand.", + "An advertising agency." ] + }, + "clientName": { + "type": "string", + "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." } }, - "id": "ListCreativeStatusBreakdownByDetailResponse", - "description": "Response message for listing all details associated with a given filtered bid\nreason.", - "type": "object" + "id": "Client" }, - "LocationContext": { - "id": "LocationContext", - "description": "@OutputOnly The Geo criteria the restriction applies to.", + "ListCreativeStatusBreakdownByCreativeResponse": { + "description": "Response message for listing all creatives associated with a given filtered\nbid reason.", "type": "object", "properties": { - "geoCriteriaIds": { - "description": "IDs representing the geo location for this context.\nPlease refer to the\n[geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv)\nfile for different geo criteria IDs.", - "items": { - "type": "integer", - "format": "int32" + "nextPageToken": { + "type": "string", + "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByCreativeRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.creatives.list\nmethod to retrieve the next page of results." + }, + "filteredBidCreativeRows": { + "description": "List of rows, with counts of bids with a given creative status aggregated\nby creative.", + "items": { + "$ref": "FilteredBidCreativeRow" }, "type": "array" } - } + }, + "id": "ListCreativeStatusBreakdownByCreativeResponse" }, - "PlatformContext": { - "description": "@OutputOnly The type of platform the restriction applies to.", + "Correction": { "type": "object", "properties": { - "platforms": { - "enumDescriptions": [ - "Desktop platform.", - "Android platform.", - "iOS platform." + "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 platforms this restriction applies to.", + "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." + ] + }, + "contexts": { "items": { - "type": "string", - "enum": [ - "DESKTOP", - "ANDROID", - "IOS" - ] + "$ref": "ServingContext" + }, + "type": "array", + "description": "The contexts for the correction." + }, + "details": { + "description": "Additional details about what was corrected.", + "items": { + "type": "string" }, "type": "array" } }, - "id": "PlatformContext" + "id": "Correction", + "description": "@OutputOnly Shows any corrections that were applied to this creative." }, - "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).", + "FilterSet": { "type": "object", "properties": { - "variance": { + "buyerAccountId": { + "type": "string", "format": "int64", - "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", - "type": "string" + "description": "The ID of the buyer account on which to filter; optional." }, - "value": { - "format": "int64", - "description": "The expected value of the metric.", - "type": "string" - } - }, - "id": "MetricValue" - }, - "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": { + "absoluteDateRange": { + "$ref": "AbsoluteDateRange", + "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone." + }, + "environment": { + "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." + "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." ], "enum": [ - "USER_STATUS_UNSPECIFIED", - "PENDING", - "ACTIVE", - "DISABLED" + "ENVIRONMENT_UNSPECIFIED", + "WEB", + "APP" ], - "description": "The status of the client user.", - "type": "string" + "description": "The environment on which to filter; optional." }, - "email": { - "description": "User's email address. The value of this field\nis ignored in an update operation.", - "type": "string" + "format": { + "type": "string", + "enumDescriptions": [ + "A placeholder for an undefined format; indicates that no format filter\nwill be applied.", + "The ad impression is display format (i.e. an image).", + "The ad impression is video format." + ], + "enum": [ + "FORMAT_UNSPECIFIED", + "DISPLAY", + "VIDEO" + ], + "description": "The format on which to filter; optional." }, - "userId": { + "dealId": { "format": "int64", - "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.", + "description": "The ID of the deal on which to filter; optional.", "type": "string" }, - "clientAccountId": { + "timeSeriesGranularity": { + "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." + ], + "enum": [ + "TIME_SERIES_GRANULARITY_UNSPECIFIED", + "HOURLY", + "DAILY" + ], + "description": "The granularity of time intervals if a time series breakdown is desired;\noptional." + }, + "filterSetId": { + "type": "string", + "format": "int64", + "description": "The ID of the filter set; unique within the account of the filter set\nowner.\nThe value of this field is ignored in create operations." + }, + "realtimeTimeRange": { + "$ref": "RealtimeTimeRange", + "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp." + }, + "creativeId": { + "type": "string", + "description": "The ID of the creative on which to filter; optional." + }, + "relativeDateRange": { + "$ref": "RelativeDateRange", + "description": "A relative date range, defined by an offset from today and a duration.\nInterpreted relative to Pacific time zone." + }, + "platforms": { + "items": { + "type": "string", + "enum": [ + "PLATFORM_UNSPECIFIED", + "DESKTOP", + "TABLET", + "MOBILE" + ] + }, + "type": "array", + "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)." + }, + "sellerNetworkIds": { + "description": "The list of IDs of the seller (publisher) networks on which to filter;\nmay be empty. The filters represented by multiple seller network IDs are\nORed together (i.e. if non-empty, results must match any one of the\npublisher networks).\nSee [seller-network-ids](https://developers.google.com/ad-exchange/rtb/downloads/seller-network-ids)\nfile for the set of existing seller network IDs.", + "items": { + "type": "integer", + "format": "int32" + }, + "type": "array" + }, + "ownerAccountId": { "format": "int64", - "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.", + "description": "The account ID of the buyer who owns this filter set.\nThe value of this field is ignored in create operations.", "type": "string" } }, - "id": "ClientUser" + "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)\"" }, - "CreativeDealAssociation": { - "id": "CreativeDealAssociation", - "description": "The association between a creative and a deal.", + "ListDealAssociationsResponse": { + "description": "A response for listing creative and deal associations", "type": "object", "properties": { - "dealsId": { - "description": "The externalDealId for the deal associated with the creative.", - "type": "string" - }, - "accountId": { - "description": "The account the creative belongs to.", - "type": "string" + "associations": { + "description": "The list of associations.", + "items": { + "$ref": "CreativeDealAssociation" + }, + "type": "array" }, - "creativeId": { - "description": "The ID of the creative associated with the deal.", + "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" }, - "Creative": { - "description": "A creative and its classification data.", + "CalloutStatusRow": { "type": "object", "properties": { - "version": { + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + }, + "calloutStatusId": { "format": "int32", - "description": "@OutputOnly The version of this creative.", + "description": "The ID of the callout status.\nSee [callout-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/callout-status-codes).", "type": "integer" }, - "vendorIds": { - "description": "All vendor IDs for the ads that may be shown from this creative.\nSee https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt\nfor possible values.", - "items": { - "type": "integer", - "format": "int32" - }, - "type": "array" - }, - "impressionTrackingUrls": { - "description": "The set of URLs to be called to record an impression.", + "impressionCount": { + "$ref": "MetricValue", + "description": "The number of impressions for which there was a bid request or bid response\nwith the specified callout status." + } + }, + "id": "CalloutStatusRow", + "description": "The number of impressions with the specified dimension values where the\ncorresponding bid request or bid response was not successful, as described by\nthe specified callout status." + }, + "StopWatchingCreativeRequest": { + "description": "A request for stopping notifications for changes to creative Status.", + "type": "object", + "properties": {}, + "id": "StopWatchingCreativeRequest" + }, + "Disapproval": { + "type": "object", + "properties": { + "details": { + "description": "Additional details about the reason for disapproval.", "items": { "type": "string" }, "type": "array" }, - "html": { - "$ref": "HtmlContent", - "description": "An HTML creative." - }, - "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." - ], + "reason": { "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.", - "items": { - "format": "int32", - "type": "integer" - }, - "type": "array" - }, - "openAuctionStatus": { + "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" + ], + "description": "The categorized reason for disapproval.", "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 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": { - "description": "The name of the company being advertised in the creative.", - "type": "string" - }, - "detectedDomains": { - "description": "@OutputOnly\nThe detected domains for this creative.", + "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." + ] + } + }, + "id": "Disapproval", + "description": "@OutputOnly The reason and details for a disapproval." + }, + "ServingRestriction": { + "description": "@OutputOnly A representation of the status of an ad in a\nspecific context. A context here relates to where something ultimately serves\n(for example, a user or publisher geo, a platform, an HTTPS vs HTTP request,\nor the type of auction).", + "type": "object", + "properties": { + "disapprovalReasons": { + "description": "Any disapprovals bound to this restriction.\nOnly present if status=DISAPPROVED.\nCan be used to filter the response of the\ncreatives.list\nmethod.", "items": { - "type": "string" + "$ref": "Disapproval" }, "type": "array" }, - "detectedAdvertiserIds": { - "description": "@OutputOnly Detected advertiser IDs, if any.", + "contexts": { "items": { - "format": "int64", - "type": "string" + "$ref": "ServingContext" }, - "type": "array" - }, - "filteringStats": { - "description": "@OutputOnly The filtering stats for this creative.", - "$ref": "FilteringStats" + "type": "array", + "description": "The contexts for the restriction." }, - "attributes": { + "status": { + "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", "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.", - "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" - ] - }, - "type": "array" - }, - "apiUpdateTime": { - "format": "google-datetime", - "description": "@OutputOnly The last update timestamp of the creative via API.", - "type": "string" - }, - "detectedLanguages": { - "description": "@OutputOnly\nThe detected languages for this creative. The order is arbitrary. The codes\nare 2 or 5 characters and are documented at\nhttps://developers.google.com/adwords/api/docs/appendix/languagecodes.", - "items": { - "type": "string" - }, - "type": "array" - }, - "creativeId": { - "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "type": "string" - }, - "accountId": { - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "type": "string" - }, - "native": { - "$ref": "NativeContent", - "description": "A native 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).", - "items": { - "$ref": "ServingRestriction" - }, - "type": "array" - }, - "video": { - "$ref": "VideoContent", - "description": "A video creative." - }, - "agencyId": { - "format": "int64", - "description": "The agency ID for this creative.", - "type": "string" - }, - "clickThroughUrls": { - "description": "The set of destination URLs for the creative.", - "items": { - "type": "string" - }, - "type": "array" - }, - "detectedSensitiveCategories": { - "description": "@OutputOnly Detected sensitive categories, if any.\nSee the ad-sensitive-categories.txt file in the technical documentation for\na list of IDs. You should use these IDs along with the\nexcluded-sensitive-category field in the bid request to filter your bids.", - "items": { - "format": "int32", - "type": "integer" - }, - "type": "array" - }, - "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.", - "items": { - "type": "string", - "enum": [ - "NO_RESTRICTED_CATEGORIES", - "ALCOHOL" - ] - }, - "type": "array", - "enumDescriptions": [ - "The ad has no restricted categories", - "The alcohol restricted category." + "The status is not known.", + "The ad was disapproved in this context.", + "The ad is pending review in this context." ] - }, - "corrections": { - "description": "@OutputOnly Shows any corrections that were applied to this creative.", - "items": { - "$ref": "Correction" - }, - "type": "array" } }, - "id": "Creative" + "id": "ServingRestriction" }, - "FilteringStats": { - "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific).", + "Date": { "type": "object", "properties": { - "reasons": { - "description": "The set of filtering reasons for this date.", - "items": { - "$ref": "Reason" - }, - "type": "array" + "month": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" }, - "date": { - "$ref": "Date", - "description": "The day during which the data was collected.\nThe data is collected from 00:00:00 to 23:59:59 PT.\nDuring switches from PST to PDT and back, the day may\ncontain 23 or 25 hours of data instead of the usual 24." - } - }, - "id": "FilteringStats" - } - }, - "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": { - "creatives": { - "resources": { - "dealAssociations": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListDealAssociationsResponse" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "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" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default.", - "type": "integer" - }, - "accountId": { - "description": "The account to list the associations from.\nSpecify \"-\" to list all creatives the current user has access to.", - "type": "string", - "required": true, - "location": "path" - }, - "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", - "location": "query" - }, - "creativeId": { - "location": "path", - "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.", - "type": "string", - "required": true - } - }, - "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." - }, - "remove": { - "request": { - "$ref": "RemoveDealAssociationRequest" - }, - "description": "Remove the association between a deal and a creative.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "location": "path", - "description": "The account the creative belongs to.", - "type": "string", - "required": true - }, - "creativeId": { - "location": "path", - "description": "The ID of the creative associated with the deal.", - "type": "string", - "required": true - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.remove", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove" - }, - "add": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "location": "path", - "description": "The account the creative belongs to.", - "type": "string", - "required": true - }, - "creativeId": { - "location": "path", - "description": "The ID of the creative associated with the deal.", - "type": "string", - "required": true - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "request": { - "$ref": "AddDealAssociationRequest" - }, - "description": "Associate an existing deal with a creative." - } - } - } - }, - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "ListCreativesResponse" - }, - "parameters": { - "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 DisapprovalReason\n\u003c/ul\u003e\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND disapprovalReason:unacceptable_content) OR attribute:47'", - "type": "string", - "location": "query" - }, - "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" - }, - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, - "accountId": { - "location": "path", - "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives", - "path": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.list", - "description": "Lists creatives." - }, - "create": { - "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.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.create", - "path": "v2beta1/accounts/{accountId}/creatives", - "description": "Creates a creative.", - "request": { - "$ref": "Creative" - } - }, - "stopWatching": { - "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.", - "request": { - "$ref": "StopWatchingCreativeRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "parameters": { - "accountId": { - "location": "path", - "description": "The account of the creative to stop notifications for.", - "type": "string", - "required": true - }, - "creativeId": { - "location": "path", - "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications.", - "type": "string", - "required": true - } - }, - "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" - }, - "get": { - "description": "Gets a creative.", - "httpMethod": "GET", - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "description": "The account the creative belongs to.", - "type": "string", - "required": true, - "location": "path" - }, - "creativeId": { - "type": "string", - "required": true, - "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" - }, - "watch": { - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", - "id": "adexchangebuyer2.accounts.creatives.watch", - "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": { - "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.", - "type": "string", - "required": true - }, - "accountId": { - "location": "path", - "description": "The account of the creative to watch.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "update": { - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "PUT", - "parameters": { - "creativeId": { - "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "type": "string", - "required": true, - "location": "path" - }, - "accountId": { - "location": "path", - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "id": "adexchangebuyer2.accounts.creatives.update", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "description": "Updates a creative.", - "request": { - "$ref": "Creative" - } - } - } + "day": { + "format": "int32", + "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.", + "type": "integer" }, - "filterSets": { + "year": { + "format": "int32", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "type": "integer" + } + }, + "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`." + } + }, + "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": { - "delete": { - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", - "id": "adexchangebuyer2.accounts.filterSets.delete", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", - "description": "Deletes the requested filter set from the account with the given account\nID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "filterSetId" - ], - "httpMethod": "DELETE", - "parameters": { - "accountId": { - "location": "path", - "format": "int64", - "description": "Account ID of the buyer.", - "type": "string", - "required": true - }, - "filterSetId": { - "location": "path", - "format": "int64", - "description": "The ID of the filter set to delete.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, "list": { - "description": "Lists all filter sets for the account with the given account ID.", "response": { - "$ref": "ListFilterSetsResponse" + "$ref": "ListClientsResponse" }, "parameterOrder": [ "accountId" @@ -2162,275 +1796,367 @@ ], "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." + "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" }, "pageSize": { + "type": "integer", "location": "query", "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" + "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default." }, "accountId": { - "format": "int64", - "description": "Account ID of the buyer.", "type": "string", "required": true, - "location": "path" + "location": "path", + "format": "int64", + "description": "Unique numerical account ID of the sponsor buyer to list the clients for." } }, - "flatPath": "v2beta1/accounts/{accountId}/filterSets", - "id": "adexchangebuyer2.accounts.filterSets.list", - "path": "v2beta1/accounts/{accountId}/filterSets" + "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." }, "get": { - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", - "id": "adexchangebuyer2.accounts.filterSets.get", - "description": "Retrieves the requested filter set for the account with the given account\nID.", - "httpMethod": "GET", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "id": "adexchangebuyer2.accounts.clients.get", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "description": "Gets a client buyer with a given client account ID.", + "response": { + "$ref": "Client" + }, "parameterOrder": [ "accountId", - "filterSetId" + "clientAccountId" ], - "response": { - "$ref": "FilterSet" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], "parameters": { - "filterSetId": { + "accountId": { + "location": "path", "format": "int64", - "description": "The ID of the filter set to get.", + "description": "Numerical account ID of the client's sponsor buyer. (required)", "type": "string", - "required": true, - "location": "path" + "required": true }, - "accountId": { + "clientAccountId": { "location": "path", "format": "int64", - "description": "Account ID of the buyer.", + "description": "Numerical account ID of the client buyer to retrieve. (required)", "type": "string", "required": true } } }, - "create": { + "update": { + "response": { + "$ref": "Client" + }, + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], "parameters": { - "isTransient": { - "description": "Whether the filter set is transient, or should be persisted indefinitely.\nBy default, filter sets are not transient.\nIf transient, it will be available for at least 1 hour after creation.", - "type": "boolean", - "location": "query" - }, "accountId": { + "location": "path", + "format": "int64", + "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)", + "type": "string", + "required": true + }, + "clientAccountId": { "type": "string", "required": true, "location": "path", "format": "int64", - "description": "Account ID of the buyer." + "description": "Unique numerical account ID of the client to update. (required)" } }, - "flatPath": "v2beta1/accounts/{accountId}/filterSets", - "id": "adexchangebuyer2.accounts.filterSets.create", - "path": "v2beta1/accounts/{accountId}/filterSets", + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "id": "adexchangebuyer2.accounts.clients.update", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", "request": { - "$ref": "FilterSet" + "$ref": "Client" }, - "description": "Creates the specified filter set for the account with the given account ID.", + "description": "Updates an existing client buyer." + }, + "create": { "response": { - "$ref": "FilterSet" + "$ref": "Client" }, "parameterOrder": [ "accountId" ], - "httpMethod": "POST" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "accountId": { + "location": "path", + "format": "int64", + "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)", + "type": "string", + "required": true + } + }, + "flatPath": "v2beta1/accounts/{accountId}/clients", + "id": "adexchangebuyer2.accounts.clients.create", + "path": "v2beta1/accounts/{accountId}/clients", + "request": { + "$ref": "Client" + }, + "description": "Creates a new client buyer." } }, "resources": { - "bidResponseErrors": { + "invitations": { "methods": { "list": { + "description": "Lists all the client users invitations for a client\nwith a given account ID.", "response": { - "$ref": "ListBidResponseErrorsResponse" + "$ref": "ListClientUserInvitationsResponse" }, "parameterOrder": [ "accountId", - "filterSetId" + "clientAccountId" ], "httpMethod": "GET", "parameters": { + "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.", + "type": "string", + "required": true + }, "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\naccounts.filterSets.bidResponseErrors.list\nmethod.", + "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" }, "pageSize": { "location": "query", "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default.", "type": "integer" }, "accountId": { - "location": "path", - "format": "int64", - "description": "Account ID of the buyer.", "type": "string", - "required": true - }, - "filterSetId": { + "required": true, "location": "path", "format": "int64", - "description": "The ID of the filter set to apply.", - "type": "string", - "required": true + "description": "Numerical account ID of the client's sponsor buyer. (required)" } }, "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponseErrors", - "id": "adexchangebuyer2.accounts.filterSets.bidResponseErrors.list", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponseErrors", - "description": "List all errors that occurred in bid responses, with the number of bid\nresponses affected for each reason." - } - } - }, - "bidResponsesWithoutBids": { - "methods": { - "list": { + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "id": "adexchangebuyer2.accounts.clients.invitations.list", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations" + }, + "get": { + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", + "id": "adexchangebuyer2.accounts.clients.invitations.get", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", + "description": "Retrieves an existing client user invitation.", "response": { - "$ref": "ListBidResponsesWithoutBidsResponse" + "$ref": "ClientUserInvitation" }, "parameterOrder": [ "accountId", - "filterSetId" + "clientAccountId", + "invitationId" ], "httpMethod": "GET", "parameters": { - "pageToken": { - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListBidResponsesWithoutBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod.", + "clientAccountId": { + "location": "path", + "format": "int64", + "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)", "type": "string", - "location": "query" + "required": true }, - "pageSize": { - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer", - "location": "query" + "invitationId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "Numerical identifier of the user invitation to retrieve. (required)" }, "accountId": { - "format": "int64", - "description": "Account ID of the buyer.", "type": "string", "required": true, - "location": "path" + "location": "path", + "format": "int64", + "description": "Numerical account ID of the client's sponsor buyer. (required)" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ] + }, + "create": { + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "response": { + "$ref": "ClientUserInvitation" + }, + "parameters": { + "accountId": { + "location": "path", + "format": "int64", + "description": "Numerical account ID of the client's sponsor buyer. (required)", + "type": "string", + "required": true }, - "filterSetId": { + "clientAccountId": { "location": "path", "format": "int64", - "description": "The ID of the filter set to apply.", + "description": "Numerical account ID of the client buyer that the user\nshould be associated with. (required)", "type": "string", "required": true } }, "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponsesWithoutBids", - "id": "adexchangebuyer2.accounts.filterSets.bidResponsesWithoutBids.list", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/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." + ] } } }, - "filteredBidRequests": { + "users": { "methods": { - "list": { - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBidRequests", - "id": "adexchangebuyer2.accounts.filterSets.filteredBidRequests.list", - "description": "List all reasons that caused a bid request not to be sent for an\nimpression, with the number of bid requests not sent for each reason.", - "httpMethod": "GET", + "get": { + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "id": "adexchangebuyer2.accounts.clients.users.get", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "description": "Retrieves an existing client user.", "response": { - "$ref": "ListFilteredBidRequestsResponse" + "$ref": "ClientUser" }, "parameterOrder": [ "accountId", - "filterSetId" + "clientAccountId", + "userId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" ], "parameters": { - "pageToken": { - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilteredBidRequestsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBidRequests.list\nmethod.", + "userId": { "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" + "required": true, + "location": "path", + "format": "int64", + "description": "Numerical identifier of the user to retrieve. (required)" }, "accountId": { "location": "path", "format": "int64", - "description": "Account ID of the buyer.", + "description": "Numerical account ID of the client's sponsor buyer. (required)", "type": "string", "required": true }, - "filterSetId": { + "clientAccountId": { + "location": "path", "format": "int64", - "description": "The ID of the filter set to apply.", + "description": "Numerical account ID of the client buyer\nthat the user to be retrieved is associated with. (required)", "type": "string", - "required": true, - "location": "path" + "required": true } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBidRequests" - } - } - }, - "filteredBids": { - "methods": { + } + }, "list": { - "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", "response": { - "$ref": "ListFilteredBidsResponse" + "$ref": "ListClientUsersResponse" }, "parameterOrder": [ "accountId", - "filterSetId" + "clientAccountId" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], "parameters": { + "clientAccountId": { + "type": "string", + "required": true, + "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": { "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\naccounts.filterSets.filteredBids.list\nmethod.", + "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" }, "pageSize": { - "type": "integer", "location": "query", "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.", + "type": "integer" }, "accountId": { "location": "path", "format": "int64", - "description": "Account ID of the buyer.", + "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)", "type": "string", "required": true + } + }, + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", + "id": "adexchangebuyer2.accounts.clients.users.list", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", + "description": "Lists all the known client users for a specified\nsponsor buyer account ID." + }, + "update": { + "response": { + "$ref": "ClientUser" + }, + "parameterOrder": [ + "accountId", + "clientAccountId", + "userId" + ], + "httpMethod": "PUT", + "parameters": { + "userId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "Numerical identifier of the user to retrieve. (required)" }, - "filterSetId": { + "accountId": { + "type": "string", + "required": true, "location": "path", "format": "int64", - "description": "The ID of the filter set to apply.", + "description": "Numerical account ID of the client's sponsor buyer. (required)" + }, + "clientAccountId": { + "location": "path", + "format": "int64", + "description": "Numerical account ID of the client buyer that the user to be retrieved\nis associated with. (required)", "type": "string", "required": true } @@ -2438,710 +2164,986 @@ "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids", - "id": "adexchangebuyer2.accounts.filterSets.filteredBids.list", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids" + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "id": "adexchangebuyer2.accounts.clients.users.update", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", + "description": "Updates an existing client user.\nOnly the user status can be changed on update.", + "request": { + "$ref": "ClientUser" + } + } + } + } + } + }, + "creatives": { + "methods": { + "list": { + "response": { + "$ref": "ListCreativesResponse" + }, + "parameterOrder": [ + "accountId" + ], + "httpMethod": "GET", + "parameters": { + "query": { + "location": "query", + "description": "An optional query string to filter creatives. If no filter is specified,\nall active creatives will be returned.\nSupported queries are:\n\u003cul\u003e\n\u003cli\u003eaccountId=\u003ci\u003eaccount_id_string\u003c/i\u003e\n\u003cli\u003ecreativeId=\u003ci\u003ecreative_id_string\u003c/i\u003e\n\u003cli\u003edealsStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eopenAuctionStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n\u003cli\u003eattribute: {a numeric attribute from the list of attributes}\n\u003cli\u003edisapprovalReason: {a reason from DisapprovalReason\n\u003c/ul\u003e\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND disapprovalReason:unacceptable_content) OR attribute:47'", + "type": "string" + }, + "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." + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "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." + }, + "accountId": { + "type": "string", + "required": true, + "location": "path", + "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to." + } + }, + "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." + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "accountId" + ], + "response": { + "$ref": "Creative" + }, + "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": { + "type": "string", + "required": true, + "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", + "request": { + "$ref": "Creative" + }, + "description": "Creates a creative." + }, + "stopWatching": { + "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.", + "request": { + "$ref": "StopWatchingCreativeRequest" + }, + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "accountId", + "creativeId" + ], + "httpMethod": "POST", + "parameters": { + "accountId": { + "location": "path", + "description": "The account of the creative to stop notifications for.", + "type": "string", + "required": true + }, + "creativeId": { + "type": "string", + "required": true, + "location": "path", + "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications." + } + }, + "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" + }, + "get": { + "response": { + "$ref": "Creative" + }, + "parameterOrder": [ + "accountId", + "creativeId" + ], + "httpMethod": "GET", + "parameters": { + "creativeId": { + "type": "string", + "required": true, + "location": "path", + "description": "The ID of the creative to retrieve." + }, + "accountId": { + "type": "string", + "required": true, + "location": "path", + "description": "The account the creative belongs to." } }, - "resources": { - "creatives": { - "methods": { - "list": { - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives", - "id": "adexchangebuyer2.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.", - "httpMethod": "GET", - "parameterOrder": [ - "accountId", - "filterSetId", - "creativeStatusId" - ], - "response": { - "$ref": "ListCreativeStatusBreakdownByCreativeResponse" - }, - "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" - }, - "accountId": { - "location": "path", - "format": "int64", - "description": "Account ID of the buyer.", - "type": "string", - "required": true - }, - "filterSetId": { - "format": "int64", - "description": "The ID of the filter set to apply.", - "type": "string", - "required": true, - "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\naccounts.filterSets.filteredBids.creatives.list\nmethod.", - "type": "string" - }, - "creativeStatusId": { - "location": "path", - "format": "int32", - "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).", - "type": "integer", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives" - } - } + "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}", + "description": "Gets a creative." + }, + "watch": { + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", + "id": "adexchangebuyer2.accounts.creatives.watch", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", + "request": { + "$ref": "WatchCreativeRequest" + }, + "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "accountId", + "creativeId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "accountId": { + "location": "path", + "description": "The account of the creative to watch.", + "type": "string", + "required": true }, - "details": { - "methods": { - "list": { - "description": "List all details associated with a specific reason for which bids were\nfiltered, with the number of bids filtered for each detail.", - "httpMethod": "GET", - "parameterOrder": [ - "accountId", - "filterSetId", - "creativeStatusId" - ], - "response": { - "$ref": "ListCreativeStatusBreakdownByDetailResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "pageSize": { - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer", - "location": "query" - }, - "accountId": { - "format": "int64", - "description": "Account ID of the buyer.", - "type": "string", - "required": true, - "location": "path" - }, - "filterSetId": { - "format": "int64", - "description": "The ID of the filter set to apply.", - "type": "string", - "required": true, - "location": "path" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativeStatusBreakdownByDetailResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.details.list\nmethod.", - "type": "string", - "location": "query" - }, - "creativeStatusId": { - "location": "path", - "format": "int32", - "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 14, 15, 17, 18, 19, 86, and 87.", - "type": "integer", - "required": true - } - }, - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/details", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/details", - "id": "adexchangebuyer2.accounts.filterSets.filteredBids.details.list" - } - } + "creativeId": { + "type": "string", + "required": true, + "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." } } }, - "nonBillableWinningBids": { + "update": { + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "id": "adexchangebuyer2.accounts.creatives.update", + "request": { + "$ref": "Creative" + }, + "description": "Updates a creative.", + "httpMethod": "PUT", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "accountId": { + "location": "path", + "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", + "type": "string", + "required": true + }, + "creativeId": { + "type": "string", + "required": true, + "location": "path", + "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod." + } + } + } + }, + "resources": { + "dealAssociations": { "methods": { "list": { - "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", - "httpMethod": "GET", "response": { - "$ref": "ListNonBillableWinningBidsResponse" + "$ref": "ListDealAssociationsResponse" }, "parameterOrder": [ "accountId", - "filterSetId" + "creativeId" ], + "httpMethod": "GET", "parameters": { - "pageToken": { + "query": { "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\naccounts.filterSets.nonBillableWinningBids.list\nmethod.", + "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" }, - "pageSize": { - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer", - "location": "query" - }, - "accountId": { - "location": "path", - "format": "int64", - "description": "Account ID of the buyer.", + "creativeId": { "type": "string", - "required": true - }, - "filterSetId": { + "required": true, "location": "path", - "format": "int64", - "description": "The ID of the filter set to apply.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/nonBillableWinningBids", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/nonBillableWinningBids", - "id": "adexchangebuyer2.accounts.filterSets.nonBillableWinningBids.list" - } - } - }, - "losingBids": { - "methods": { - "list": { - "response": { - "$ref": "ListLosingBidsResponse" - }, - "parameterOrder": [ - "accountId", - "filterSetId" - ], - "httpMethod": "GET", - "parameters": { + "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account." + }, "pageToken": { - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListLosingBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.losingBids.list\nmethod.", "type": "string", - "location": "query" + "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." }, "pageSize": { + "type": "integer", "location": "query", "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" + "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default." }, "accountId": { - "type": "string", - "required": true, "location": "path", - "format": "int64", - "description": "Account ID of the buyer." - }, - "filterSetId": { - "format": "int64", - "description": "The ID of the filter set to apply.", + "description": "The account to list the associations from.\nSpecify \"-\" to list all creatives the current user has access to.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/losingBids", - "id": "adexchangebuyer2.accounts.filterSets.losingBids.list", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/losingBids", - "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason." - } - } - }, - "bidMetrics": { - "methods": { - "list": { - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidMetrics", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidMetrics", - "id": "adexchangebuyer2.accounts.filterSets.bidMetrics.list", - "description": "Lists all metrics that are measured in terms of number of bids.", - "httpMethod": "GET", - "response": { - "$ref": "ListBidMetricsResponse" + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", + "description": "List all creative-deal associations." + }, + "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" }, + "httpMethod": "POST", "parameterOrder": [ "accountId", - "filterSetId" + "creativeId" ], + "response": { + "$ref": "Empty" + }, "parameters": { - "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\naccounts.filterSets.bidMetrics.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" - }, - "accountId": { - "format": "int64", - "description": "Account ID of the buyer.", + "creativeId": { + "location": "path", + "description": "The ID of the creative associated with the deal.", "type": "string", - "required": true, - "location": "path" + "required": true }, - "filterSetId": { - "format": "int64", - "description": "The ID of the filter set to apply.", + "accountId": { + "location": "path", + "description": "The account the creative belongs to.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ] - } - } - }, - "impressionMetrics": { - "methods": { - "list": { - "response": { - "$ref": "ListImpressionMetricsResponse" + }, + "add": { + "description": "Associate an existing deal with a creative.", + "request": { + "$ref": "AddDealAssociationRequest" }, + "httpMethod": "POST", "parameterOrder": [ "accountId", - "filterSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" + "creativeId" ], + "response": { + "$ref": "Empty" + }, "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListImpressionMetricsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.impressionMetrics.list\nmethod.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" - }, "accountId": { - "location": "path", - "format": "int64", - "description": "Account ID of the buyer.", "type": "string", - "required": true - }, - "filterSetId": { + "required": true, "location": "path", - "format": "int64", - "description": "The ID of the filter set to apply.", + "description": "The account the creative belongs to." + }, + "creativeId": { "type": "string", - "required": true + "required": true, + "location": "path", + "description": "The ID of the creative associated with the deal." } }, - "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/impressionMetrics", - "id": "adexchangebuyer2.accounts.filterSets.impressionMetrics.list", - "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/impressionMetrics", - "description": "Lists all metrics that are measured in terms of number of impressions." + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add" } } } } }, - "clients": { + "filterSets": { "methods": { "list": { - "description": "Lists all the clients for the current sponsor buyer.", + "response": { + "$ref": "ListFilterSetsResponse" + }, "parameterOrder": [ "accountId" ], - "response": { - "$ref": "ListClientsResponse" - }, "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", "format": "int32", - "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer" + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." }, "accountId": { "type": "string", "required": true, "location": "path", "format": "int64", - "description": "Unique numerical account ID of the sponsor buyer to list the clients for." - }, - "pageToken": { - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientsResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.list method.", - "type": "string", - "location": "query" + "description": "Account ID of the buyer." } }, - "flatPath": "v2beta1/accounts/{accountId}/clients", - "id": "adexchangebuyer2.accounts.clients.list", - "path": "v2beta1/accounts/{accountId}/clients" + "flatPath": "v2beta1/accounts/{accountId}/filterSets", + "id": "adexchangebuyer2.accounts.filterSets.list", + "path": "v2beta1/accounts/{accountId}/filterSets", + "description": "Lists all filter sets for the account with the given account ID." }, "get": { - "httpMethod": "GET", + "response": { + "$ref": "FilterSet" + }, "parameterOrder": [ "accountId", - "clientAccountId" + "filterSetId" ], - "response": { - "$ref": "Client" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], "parameters": { "accountId": { - "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", "type": "string", "required": true, - "location": "path" + "location": "path", + "format": "int64", + "description": "Account ID of the buyer." }, - "clientAccountId": { + "filterSetId": { "location": "path", "format": "int64", - "description": "Numerical account ID of the client buyer to retrieve. (required)", + "description": "The ID of the filter set to get.", "type": "string", "required": true } }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.get", - "description": "Gets a client buyer with a given client account ID." + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", + "id": "adexchangebuyer2.accounts.filterSets.get", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", + "description": "Retrieves the requested filter set for the account with the given account\nID." }, - "update": { + "create": { + "flatPath": "v2beta1/accounts/{accountId}/filterSets", + "id": "adexchangebuyer2.accounts.filterSets.create", + "path": "v2beta1/accounts/{accountId}/filterSets", + "request": { + "$ref": "FilterSet" + }, + "description": "Creates the specified filter set for the account with the given account ID.", "response": { - "$ref": "Client" + "$ref": "FilterSet" + }, + "parameterOrder": [ + "accountId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "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." + }, + "accountId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "Account ID of the buyer." + } + } + }, + "delete": { + "response": { + "$ref": "Empty" }, "parameterOrder": [ "accountId", - "clientAccountId" + "filterSetId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" ], - "httpMethod": "PUT", "parameters": { "accountId": { "location": "path", "format": "int64", - "description": "Unique numerical account ID for the buyer of which the client buyer\nis a customer; the sponsor buyer to update a client for. (required)", + "description": "Account ID of the buyer.", "type": "string", "required": true }, - "clientAccountId": { + "filterSetId": { + "location": "path", "format": "int64", - "description": "Unique numerical account ID of the client to update. (required)", + "description": "The ID of the filter set to delete.", "type": "string", - "required": true, - "location": "path" + "required": true + } + }, + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", + "id": "adexchangebuyer2.accounts.filterSets.delete", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}", + "description": "Deletes the requested filter set from the account with the given account\nID." + } + }, + "resources": { + "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": [ + "accountId", + "filterSetId" + ], + "httpMethod": "GET", + "parameters": { + "filterSetId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply." + }, + "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\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod." + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + }, + "accountId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "Account ID of the buyer." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponsesWithoutBids", + "id": "adexchangebuyer2.accounts.filterSets.bidResponsesWithoutBids.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/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.", + "httpMethod": "GET", + "response": { + "$ref": "ListFilteredBidRequestsResponse" + }, + "parameterOrder": [ + "accountId", + "filterSetId" + ], + "parameters": { + "filterSetId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply." + }, + "pageToken": { + "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\naccounts.filterSets.filteredBidRequests.list\nmethod.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "type": "integer" + }, + "accountId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "Account ID of the buyer." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBidRequests", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBidRequests", + "id": "adexchangebuyer2.accounts.filterSets.filteredBidRequests.list" } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.update", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "description": "Updates an existing client buyer.", - "request": { - "$ref": "Client" } }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "accountId" - ], - "response": { - "$ref": "Client" - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "format": "int64", - "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)", - "type": "string", - "required": true, - "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." - } - }, - "resources": { - "invitations": { + "filteredBids": { "methods": { "list": { + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids", + "id": "adexchangebuyer2.accounts.filterSets.filteredBids.list", + "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", + "httpMethod": "GET", + "response": { + "$ref": "ListFilteredBidsResponse" + }, + "parameterOrder": [ + "accountId", + "filterSetId" + ], "parameters": { - "clientAccountId": { + "filterSetId": { "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.", + "format": "int64", + "description": "The ID of the filter set to apply.", "type": "string", "required": true }, "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.", + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilteredBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.list\nmethod.", "type": "string" }, "pageSize": { "type": "integer", "location": "query", "format": "int32", - "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default." + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." }, "accountId": { "location": "path", "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", + "description": "Account ID of the buyer.", "type": "string", "required": true } }, "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "id": "adexchangebuyer2.accounts.clients.invitations.list", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "description": "Lists all the client users invitations for a client\nwith a given account ID.", - "response": { - "$ref": "ListClientUserInvitationsResponse" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET" + ] + } + }, + "resources": { + "creatives": { + "methods": { + "list": { + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives", + "id": "adexchangebuyer2.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.", + "httpMethod": "GET", + "response": { + "$ref": "ListCreativeStatusBreakdownByCreativeResponse" + }, + "parameterOrder": [ + "accountId", + "filterSetId", + "creativeStatusId" + ], + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "filterSetId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply." + }, + "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\naccounts.filterSets.filteredBids.creatives.list\nmethod." + }, + "creativeStatusId": { + "location": "path", + "format": "int32", + "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).", + "type": "integer", + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "type": "integer" + }, + "accountId": { + "location": "path", + "format": "int64", + "description": "Account ID of the buyer.", + "type": "string", + "required": true + } + } + } + } }, - "get": { - "id": "adexchangebuyer2.accounts.clients.invitations.get", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", - "description": "Retrieves an existing client user invitation.", + "details": { + "methods": { + "list": { + "parameterOrder": [ + "accountId", + "filterSetId", + "creativeStatusId" + ], + "response": { + "$ref": "ListCreativeStatusBreakdownByDetailResponse" + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "filterSetId": { + "type": "string", + "required": true, + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply." + }, + "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\naccounts.filterSets.filteredBids.details.list\nmethod." + }, + "creativeStatusId": { + "type": "integer", + "required": true, + "location": "path", + "format": "int32", + "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 14, 15, 17, 18, 19, 86, and 87." + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + }, + "accountId": { + "location": "path", + "format": "int64", + "description": "Account ID of the buyer.", + "type": "string", + "required": true + } + }, + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/details", + "id": "adexchangebuyer2.accounts.filterSets.filteredBids.details.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/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." + } + } + } + } + }, + "nonBillableWinningBids": { + "methods": { + "list": { + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/nonBillableWinningBids", + "id": "adexchangebuyer2.accounts.filterSets.nonBillableWinningBids.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/nonBillableWinningBids", + "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", "response": { - "$ref": "ClientUserInvitation" + "$ref": "ListNonBillableWinningBidsResponse" }, "parameterOrder": [ "accountId", - "clientAccountId", - "invitationId" + "filterSetId" ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/adexchange.buyer" ], "parameters": { - "accountId": { - "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", + "filterSetId": { "type": "string", "required": true, - "location": "path" - }, - "clientAccountId": { + "location": "path", "format": "int64", - "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)", + "description": "The ID of the filter set to apply." + }, + "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\naccounts.filterSets.nonBillableWinningBids.list\nmethod.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + }, + "accountId": { "type": "string", "required": true, - "location": "path" - }, - "invitationId": { "location": "path", "format": "int64", - "description": "Numerical identifier of the user invitation to retrieve. (required)", - "type": "string", - "required": true + "description": "Account ID of the buyer." } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}" - }, - "create": { - "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account.", - "request": { - "$ref": "ClientUserInvitation" - }, + } + } + } + }, + "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": "ClientUserInvitation" + "$ref": "ListLosingBidsResponse" }, "parameterOrder": [ "accountId", - "clientAccountId" + "filterSetId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" ], - "httpMethod": "POST", "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListLosingBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.losingBids.list\nmethod." + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default.", + "type": "integer" + }, "accountId": { "location": "path", "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", + "description": "Account ID of the buyer.", "type": "string", "required": true }, - "clientAccountId": { - "format": "int64", - "description": "Numerical account ID of the client buyer that the user\nshould be associated with. (required)", + "filterSetId": { "type": "string", "required": true, - "location": "path" + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply." } }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", - "id": "adexchangebuyer2.accounts.clients.invitations.create", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations" + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/losingBids", + "id": "adexchangebuyer2.accounts.filterSets.losingBids.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/losingBids" } } }, - "users": { + "impressionMetrics": { "methods": { - "get": { - "id": "adexchangebuyer2.accounts.clients.users.get", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "description": "Retrieves an existing client user.", - "response": { - "$ref": "ClientUser" - }, + "list": { + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/impressionMetrics", + "id": "adexchangebuyer2.accounts.filterSets.impressionMetrics.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/impressionMetrics", + "description": "Lists all metrics that are measured in terms of number of impressions.", "parameterOrder": [ "accountId", - "clientAccountId", - "userId" + "filterSetId" ], + "response": { + "$ref": "ListImpressionMetricsResponse" + }, "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], "parameters": { - "accountId": { + "filterSetId": { + "location": "path", "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", + "description": "The ID of the filter set to apply.", "type": "string", - "required": true, - "location": "path" + "required": true }, - "clientAccountId": { - "format": "int64", - "description": "Numerical account ID of the client buyer\nthat the user to be retrieved is associated with. (required)", + "pageToken": { "type": "string", - "required": true, - "location": "path" + "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\naccounts.filterSets.impressionMetrics.list\nmethod." }, - "userId": { + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + }, + "accountId": { + "type": "string", + "required": true, "location": "path", "format": "int64", - "description": "Numerical identifier of the user to retrieve. (required)", - "type": "string", - "required": true + "description": "Account ID of the buyer." } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}" - }, + } + } + } + }, + "bidMetrics": { + "methods": { "list": { - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "id": "adexchangebuyer2.accounts.clients.users.list", - "description": "Lists all the known client users for a specified\nsponsor buyer account ID.", - "httpMethod": "GET", "response": { - "$ref": "ListClientUsersResponse" + "$ref": "ListBidMetricsResponse" }, "parameterOrder": [ "accountId", - "clientAccountId" - ], - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" + "filterSetId" ], + "httpMethod": "GET", "parameters": { + "filterSetId": { + "location": "path", + "format": "int64", + "description": "The ID of the filter set to apply.", + "type": "string", + "required": true + }, "pageToken": { "location": "query", - "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUsersResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.users.list method.", + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListBidMetricsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.bidMetrics.list\nmethod.", "type": "string" }, "pageSize": { - "format": "int32", - "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.", "type": "integer", - "location": "query" + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." }, "accountId": { - "format": "int64", - "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)", "type": "string", "required": true, - "location": "path" - }, - "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.", - "type": "string", - "required": true + "format": "int64", + "description": "Account ID of the buyer." } - } - }, - "update": { - "description": "Updates an existing client user.\nOnly the user status can be changed on update.", - "request": { - "$ref": "ClientUser" }, - "httpMethod": "PUT", - "parameterOrder": [ - "accountId", - "clientAccountId", - "userId" + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" ], + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidMetrics", + "id": "adexchangebuyer2.accounts.filterSets.bidMetrics.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidMetrics", + "description": "Lists all metrics that are measured in terms of number of bids." + } + } + }, + "bidResponseErrors": { + "methods": { + "list": { "response": { - "$ref": "ClientUser" + "$ref": "ListBidResponseErrorsResponse" }, + "parameterOrder": [ + "accountId", + "filterSetId" + ], + "httpMethod": "GET", "parameters": { - "userId": { - "format": "int64", - "description": "Numerical identifier of the user to retrieve. (required)", - "type": "string", - "required": true, - "location": "path" - }, - "accountId": { + "filterSetId": { "location": "path", "format": "int64", - "description": "Numerical account ID of the client's sponsor buyer. (required)", + "description": "The ID of the filter set to apply.", "type": "string", "required": true }, - "clientAccountId": { + "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\naccounts.filterSets.bidResponseErrors.list\nmethod.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested page size. The server may return fewer results than requested.\nIf unspecified, the server will pick an appropriate default." + }, + "accountId": { + "type": "string", + "required": true, "location": "path", "format": "int64", - "description": "Numerical account ID of the client buyer that the user to be retrieved\nis associated with. (required)", - "type": "string", - "required": true + "description": "Account ID of the buyer." } }, "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" + "flatPath": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponseErrors", + "id": "adexchangebuyer2.accounts.filterSets.bidResponseErrors.list", + "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponseErrors", + "description": "List all errors that occurred in bid responses, with the number of bid\nresponses affected for each reason." } } } @@ -3151,49 +3153,29 @@ } }, "parameters": { - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "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", - "location": "query" + "type": "string" }, "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "boolean", + "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\")." }, - "callback": { + "fields": { "location": "query", - "description": "JSONP", + "description": "Selector specifying which fields to include in a partial response.", "type": "string" }, "$.xgafv": { + "location": "query", "enum": [ "1", "2" @@ -3203,10 +3185,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", @@ -3217,25 +3206,38 @@ "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.", - "type": "string" + "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" + "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.", + "default": "true", + "type": "boolean" + }, + "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." } }, "version": "v2beta1", @@ -3244,9 +3246,7 @@ "description": "Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", "servicePath": "", "basePath": "", - "revision": "20170714", - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/guides/client-access/", "id": "adexchangebuyer2:v2beta1", - "discoveryVersion": "v1", - "version_module": "True" + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/guides/client-access/", + "revision": "20170717" } diff --git a/DiscoveryJson/adexperiencereport_v1.json b/DiscoveryJson/adexperiencereport_v1.json index e857039e25..69f12c9519 100644 --- a/DiscoveryJson/adexperiencereport_v1.json +++ b/DiscoveryJson/adexperiencereport_v1.json @@ -1,11 +1,157 @@ { - "revision": "20170628", - "documentationLink": "https://developers.google.com/ad-experience-report/", + "ownerName": "Google", + "resources": { + "sites": { + "methods": { + "get": { + "description": "Gets a summary of the ads rating of a site.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "SiteSummaryResponse" + }, + "parameters": { + "name": { + "pattern": "^sites/[^/]+$", + "location": "path", + "description": "The required site name. It should be a site property registered in Search\nConsole. The server will return an error of BAD_REQUEST if this field is\nnot filled in.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ], + "flatPath": "v1/sites/{sitesId}", + "path": "v1/{+name}", + "id": "adexperiencereport.sites.get" + } + } + }, + "violatingSites": { + "methods": { + "list": { + "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\".", + "response": { + "$ref": "ViolatingSitesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ], + "flatPath": "v1/violatingSites", + "id": "adexperiencereport.violatingSites.list", + "path": "v1/violatingSites" + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "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" + }, + "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": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "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://adexperiencereport.googleapis.com/", + "servicePath": "", + "description": "View Ad Experience Report data, and get a list of sites that have a significant number of annoying ads.", + "kind": "discovery#restDescription", + "basePath": "", "id": "adexperiencereport:v1", + "documentationLink": "https://developers.google.com/ad-experience-report/", + "revision": "20170628", "discoveryVersion": "v1", "version_module": "True", "schemas": { "ViolatingSitesResponse": { + "description": "Response message for ListViolatingSites.", "type": "object", "properties": { "violatingSites": { @@ -16,17 +162,13 @@ "type": "array" } }, - "id": "ViolatingSitesResponse", - "description": "Response message for ListViolatingSites." + "id": "ViolatingSitesResponse" }, "SiteSummaryResponse": { + "id": "SiteSummaryResponse", "description": "Response message for GetSiteSummary.", "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" @@ -34,32 +176,16 @@ "reviewedSite": { "description": "The name of the site reviewed.", "type": "string" + }, + "desktopSummary": { + "$ref": "PlatformSummary", + "description": "Summary for the desktop review of the site." } - }, - "id": "SiteSummaryResponse" + } }, "PlatformSummary": { - "description": "Summary of the ads rating of a site for a specific platform.", "type": "object", "properties": { - "filterStatus": { - "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" - ], - "description": "The ad filtering status of the site.", - "type": "string" - }, "underReview": { "description": "Whether the site is currently under review.", "type": "boolean" @@ -74,20 +200,21 @@ "type": "string" }, "egregiousStatus": { + "enum": [ + "UNKNOWN", + "PASSING", + "FAILING" + ], "description": "The status of the site reviewed for egregious ads.", "type": "string", "enumDescriptions": [ "Not reviewed.", "Passing.", "Failing." - ], - "enum": [ - "UNKNOWN", - "PASSING", - "FAILING" ] }, "betterAdsStatus": { + "type": "string", "enumDescriptions": [ "Not reviewed.", "Passing.", @@ -100,13 +227,12 @@ "WARNING", "FAILING" ], - "description": "The status of the site reviewed for the Better Ads Standards.", - "type": "string" + "description": "The status of the site reviewed for the Better Ads Standards." }, "enforcementTime": { - "type": "string", "format": "google-datetime", - "description": "The date on which ad filtering begins." + "description": "The date on which ad filtering begins.", + "type": "string" }, "region": { "description": "The assigned regions for the site and platform.", @@ -124,16 +250,35 @@ "Region A.", "Region B." ] + }, + "filterStatus": { + "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" + ], + "description": "The ad filtering status of the site.", + "type": "string" } }, - "id": "PlatformSummary" + "id": "PlatformSummary", + "description": "Summary of the ads rating of a site for a specific platform." } }, - "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": "Ad Experience Report", "auth": { "oauth2": { @@ -148,150 +293,5 @@ "ownerDomain": "google.com", "name": "adexperiencereport", "batchPath": "batch", - "title": "Google Ad Experience Report API", - "ownerName": "Google", - "resources": { - "sites": { - "methods": { - "get": { - "description": "Gets a summary of the ads rating of a site.", - "response": { - "$ref": "SiteSummaryResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "parameters": { - "name": { - "description": "The required site name. It should be a site property registered in Search\nConsole. The server will return an error of BAD_REQUEST if this field is\nnot filled in.", - "type": "string", - "required": true, - "pattern": "^sites/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/sites/{sitesId}", - "id": "adexperiencereport.sites.get", - "path": "v1/{+name}" - } - } - }, - "violatingSites": { - "methods": { - "list": { - "response": { - "$ref": "ViolatingSitesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "parameters": {}, - "flatPath": "v1/violatingSites", - "id": "adexperiencereport.violatingSites.list", - "path": "v1/violatingSites", - "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\"." - } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://adexperiencereport.googleapis.com/", - "servicePath": "", - "description": "View Ad Experience Report data, and get a list of sites that have a significant number of annoying ads.", - "kind": "discovery#restDescription", - "basePath": "" + "title": "Google Ad Experience Report API" } diff --git a/DiscoveryJson/adsense_v1.3.json b/DiscoveryJson/adsense_v1.3.json index ba12108385..3f49ed9bb6 100644 --- a/DiscoveryJson/adsense_v1.3.json +++ b/DiscoveryJson/adsense_v1.3.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/y22cLzhH-iQ2ud0pbZDJAs5BBxA\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/DoNUzf_hLSrNmDFeoV66CnnYCbY\"", "discoveryVersion": "v1", "id": "adsense:v1.3", "name": "adsense", "canonicalName": "AdSense", "version": "v1.3", - "revision": "20170716", + "revision": "20170717", "title": "AdSense Management API", "description": "Accesses AdSense publishers' inventory and generates performance reports.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/adsense_v1.4.json b/DiscoveryJson/adsense_v1.4.json index 706df18b1e..e1d0f628e3 100644 --- a/DiscoveryJson/adsense_v1.4.json +++ b/DiscoveryJson/adsense_v1.4.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/bY_0scC0uvwjUhPDnp9TKwBC0oo\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/VgO2aQvSVW9XnYVCo0Gj0Okjjrg\"", "discoveryVersion": "v1", "id": "adsense:v1.4", "name": "adsense", "canonicalName": "AdSense", "version": "v1.4", - "revision": "20170716", + "revision": "20170717", "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 19230ecbff..60121c5ae3 100644 --- a/DiscoveryJson/adsensehost_v4.1.json +++ b/DiscoveryJson/adsensehost_v4.1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/4UzSZP5jG9cNLFuIZEu7Ik5vEqw\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/ETV_dDua7GRqjW86bVb74BsPzVM\"", "discoveryVersion": "v1", "id": "adsensehost:v4.1", "name": "adsensehost", "canonicalName": "AdSense Host", "version": "v4.1", - "revision": "20170716", + "revision": "20170717", "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 efc38f84f3..df15566fa6 100644 --- a/DiscoveryJson/analyticsreporting_v4.json +++ b/DiscoveryJson/analyticsreporting_v4.json @@ -1,1036 +1,1042 @@ { - "id": "analyticsreporting:v4", + "version": "v4", + "baseUrl": "https://analyticsreporting.googleapis.com/", + "servicePath": "", + "description": "Accesses Analytics report data.", + "kind": "discovery#restDescription", + "basePath": "", "documentationLink": "https://developers.google.com/analytics/devguides/reporting/core/v4/", "revision": "20170705", + "id": "analyticsreporting:v4", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "SimpleSegment": { - "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined.", - "type": "object", - "properties": { - "orFiltersForSegment": { - "description": "A list of segment filters groups which are combined with logical `AND`\noperator.", - "items": { - "$ref": "OrFiltersForSegment" - }, - "type": "array" - } - }, - "id": "SimpleSegment" - }, - "DynamicSegment": { - "description": "Dynamic segment definition for defining the segment within the request.\nA segment can select users, sessions or both.", + "DimensionFilter": { + "description": "Dimension filter specifies the filtering options on a dimension.", "type": "object", "properties": { - "sessionSegment": { - "$ref": "SegmentDefinition", - "description": "Session Segment to select sessions to include in the segment." + "caseSensitive": { + "description": "Should the match be case sensitive? Default is false.", + "type": "boolean" }, - "name": { - "description": "The name of the dynamic segment.", + "operator": { + "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.", + "Matches the value which begin with the match expression provided.", + "Matches the values which end with the match expression provided.", + "Substring match.", + "The value should match the match expression entirely.", + "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- If expression is not a valid int64, the client should expect\n an error.\n- Input dimensions that are not valid int64 values will never match the\n filter.", + "Checks if the dimension is numerically greater than the match\nexpression. Read the description for `NUMERIC_EQUALS` for restrictions.", + "Checks if the dimension is numerically less than the match expression.\nRead the description for `NUMERIC_EQUALS` for restrictions.", + "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter." + ], + "enum": [ + "OPERATOR_UNSPECIFIED", + "REGEXP", + "BEGINS_WITH", + "ENDS_WITH", + "PARTIAL", + "EXACT", + "NUMERIC_EQUAL", + "NUMERIC_GREATER_THAN", + "NUMERIC_LESS_THAN", + "IN_LIST" + ], + "description": "How to match the dimension to the expression. The default is REGEXP." + }, + "dimensionName": { + "description": "The dimension to filter on. A DimensionFilter must contain a dimension.", "type": "string" }, - "userSegment": { - "$ref": "SegmentDefinition", - "description": "User Segment to select users to include in the segment." - } - }, - "id": "DynamicSegment" - }, - "ColumnHeader": { - "type": "object", - "properties": { - "dimensions": { - "description": "The dimension names in the response.", + "expressions": { + "description": "Strings or regular expression to match against. Only the first value of\nthe list is used for comparison unless the operator is `IN_LIST`.\nIf `IN_LIST` operator, then the entire list is used to filter the\ndimensions as explained in the description of the `IN_LIST` operator.", "items": { "type": "string" }, "type": "array" }, - "metricHeader": { - "$ref": "MetricHeader", - "description": "Metric headers for the metrics in the response." - } - }, - "id": "ColumnHeader", - "description": "Column headers." - }, - "SegmentFilterClause": { - "properties": { - "dimensionFilter": { - "description": "Dimension Filter for the segment definition.", - "$ref": "SegmentDimensionFilter" - }, - "metricFilter": { - "$ref": "SegmentMetricFilter", - "description": "Metric Filter for the segment definition." - }, "not": { - "description": "Matches the complement (`!`) of the filter.", + "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" } }, - "id": "SegmentFilterClause", - "description": "Filter Clause to be used in a segment definition, can be wither a metric or\na dimension filter.", - "type": "object" + "id": "DimensionFilter" }, - "MetricFilterClause": { - "description": "Represents a group of metric filters.\nSet the operator value to specify how the filters are logically combined.", + "Segment": { + "description": "The segment definition, if the report needs to be segmented.\nA Segment is a subset of the Analytics data. For example, of the entire\nset of users, one Segment might be users from a particular country or city.", "type": "object", "properties": { - "filters": { - "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", - "items": { - "$ref": "MetricFilter" - }, - "type": "array" + "dynamicSegment": { + "$ref": "DynamicSegment", + "description": "A dynamic segment definition in the request." }, - "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`.", + "segmentId": { + "description": "The segment ID of a built-in or custom segment, for example `gaid::-3`.", "type": "string" } }, - "id": "MetricFilterClause" + "id": "Segment" }, - "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.", + "OrderBy": { + "description": "Specifies the sorting options.", "type": "object", "properties": { - "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.", + "orderType": { + "description": "The order type. The default orderType is `VALUE`.", "type": "string", "enumDescriptions": [ - "If unspecified it's treated as `FIRST_VISIT_DATE`.", - "Cohorts that are selected based on first visit date." + "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": [ - "UNSPECIFIED_COHORT_TYPE", - "FIRST_VISIT_DATE" + "ORDER_TYPE_UNSPECIFIED", + "VALUE", + "DELTA", + "SMART", + "HISTOGRAM_BUCKET", + "DIMENSION_AS_INTEGER" ] }, - "dateRange": { - "description": "This is used for `FIRST_VISIT_DATE` cohort, the cohort selects users\nwhose first visit date is between start date and end date defined in the\nDateRange. The date ranges should be aligned for cohort requests. If the\nrequest contains `ga:cohortNthDay` it should be exactly one day long,\nif `ga:cohortNthWeek` it should be aligned to the week boundary (starting\nat Sunday and ending Saturday), and for `ga:cohortNthMonth` the date range\nshould be aligned to the month (starting at the first and ending on the\nlast day of the month).\nFor LTV requests there are no such restrictions.\nYou do not need to supply a date range for the\n`reportsRequest.dateRanges` field.", - "$ref": "DateRange" - }, - "name": { - "description": "A unique name for the cohort. If not defined name will be auto-generated\nwith values cohort_[1234...].", + "fieldName": { + "description": "The field which to sort by. The default sort order is ascending. Example:\n`ga:browser`.\nNote, that you can only specify one field for sort here. For example,\n`ga:browser, ga:city` is not valid.", "type": "string" + }, + "sortOrder": { + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "description": "The sorting order for the field.", + "type": "string", + "enumDescriptions": [ + "If the sort order is unspecified, the default is ascending.", + "Ascending sort. The field will be sorted in an ascending manner.", + "Descending sort. The field will be sorted in a descending manner." + ] } }, - "id": "Cohort" + "id": "OrderBy" }, - "ReportRow": { - "description": "A row in the report.", + "SegmentDimensionFilter": { + "description": "Dimension filter specifies the filtering options on a dimension.", "type": "object", "properties": { - "metrics": { - "description": "List of metrics for each requested DateRange.", - "items": { - "$ref": "DateRangeValues" - }, - "type": "array" + "caseSensitive": { + "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", + "type": "boolean" }, - "dimensions": { - "description": "List of requested dimensions.", + "minComparisonValue": { + "description": "Minimum comparison values for `BETWEEN` match type.", + "type": "string" + }, + "maxComparisonValue": { + "description": "Maximum comparison values for `BETWEEN` match type.", + "type": "string" + }, + "dimensionName": { + "description": "Name of the dimension for which the filter is being applied.", + "type": "string" + }, + "operator": { + "description": "The operator to use to match the dimension with the expressions.", + "type": "string", + "enumDescriptions": [ + "If the match type is unspecified, it is treated as a REGEXP.", + "The match expression is treated as a regular expression. All other match\ntypes are not treated as regular expressions.", + "Matches the values which begin with the match expression provided.", + "Matches the values which end with the match expression provided.", + "Substring match.", + "The value should match the match expression entirely.", + "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter.", + "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- if expression is not a valid int64, the client should expect\n an error.\n- input dimensions that are not valid int64 values will never match the\n filter.\n\nChecks if the dimension is numerically less than the match expression.", + "Checks if the dimension is numerically greater than the match\nexpression.", + "Checks if the dimension is numerically between the minimum and maximum\nof the match expression, boundaries excluded." + ], + "enum": [ + "OPERATOR_UNSPECIFIED", + "REGEXP", + "BEGINS_WITH", + "ENDS_WITH", + "PARTIAL", + "EXACT", + "IN_LIST", + "NUMERIC_LESS_THAN", + "NUMERIC_GREATER_THAN", + "NUMERIC_BETWEEN" + ] + }, + "expressions": { + "description": "The list of expressions, only the first element is used for all operators", "items": { "type": "string" }, "type": "array" } }, - "id": "ReportRow" + "id": "SegmentDimensionFilter" }, - "OrFiltersForSegment": { - "id": "OrFiltersForSegment", - "description": "A list of segment filters in the `OR` group are combined with the logical OR\noperator.", + "SegmentSequenceStep": { "type": "object", "properties": { - "segmentFilterClauses": { - "description": "List of segment filters to be combined with a `OR` operator.", + "orFiltersForSegment": { + "description": "A sequence is specified with a list of Or grouped filters which are\ncombined with `AND` operator.", "items": { - "$ref": "SegmentFilterClause" + "$ref": "OrFiltersForSegment" }, "type": "array" + }, + "matchType": { + "description": "Specifies if the step immediately precedes or can be any time before the\nnext step.", + "type": "string", + "enumDescriptions": [ + "Unspecified match type is treated as precedes.", + "Operator indicates that the previous step precedes the next step.", + "Operator indicates that the previous step immediately precedes the next\nstep." + ], + "enum": [ + "UNSPECIFIED_MATCH_TYPE", + "PRECEDES", + "IMMEDIATELY_PRECEDES" + ] } - } + }, + "id": "SegmentSequenceStep", + "description": "A segment sequence definition." }, - "MetricHeader": { + "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": { - "metricHeaderEntries": { - "description": "Headers for the metrics in the response.", - "items": { - "$ref": "MetricHeaderEntry" - }, - "type": "array" + "alias": { + "type": "string", + "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." }, - "pivotHeaders": { - "description": "Headers for the pivots in the response.", - "items": { - "$ref": "PivotHeader" - }, - "type": "array" - } - }, - "id": "MetricHeader", - "description": "The headers for the metrics." - }, - "DimensionFilterClause": { - "description": "A group of dimension filters. Set the operator value to specify how\nthe filters are logically combined.", - "type": "object", - "properties": { - "filters": { - "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", - "items": { - "$ref": "DimensionFilter" - }, - "type": "array" + "expression": { + "description": "A metric expression in the request. An expression is constructed from one\nor more metrics and numbers. Accepted operators include: Plus (+), Minus\n(-), Negation (Unary -), Divided by (/), Multiplied by (*), Parenthesis,\nPositive cardinal numbers (0-9), can include decimals and is limited to\n1024 characters. Example `ga:totalRefunds/ga:users`, in most cases the\nmetric expression is just a single metric name like `ga:users`.\nAdding mixed `MetricType` (E.g., `CURRENCY` + `PERCENTAGE`) metrics\nwill result in unexpected results.", + "type": "string" }, - "operator": { - "enum": [ - "OPERATOR_UNSPECIFIED", - "OR", - "AND" - ], - "description": "The operator for combining multiple dimension filters. If unspecified, it\nis treated as an `OR`.", + "formattingType": { + "description": "Specifies how the metric expression should be formatted, for example\n`INTEGER`.", "type": "string", "enumDescriptions": [ - "Unspecified operator. It is treated as an `OR`.", - "The logical `OR` operator.", - "The logical `AND` operator." + "Metric type is unspecified.", + "Integer metric.", + "Float metric.", + "Currency metric.", + "Percentage metric.", + "Time metric in `HH:MM:SS` format." + ], + "enum": [ + "METRIC_TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "CURRENCY", + "PERCENT", + "TIME" ] } }, - "id": "DimensionFilterClause" + "id": "Metric" }, - "GetReportsResponse": { + "PivotValueRegion": { + "description": "The metric values in the pivot region.", "type": "object", "properties": { - "reports": { - "description": "Responses corresponding to each of the request.", + "values": { + "description": "The values of the metrics in each of the pivot regions.", "items": { - "$ref": "Report" + "type": "string" }, "type": "array" } }, - "id": "GetReportsResponse", - "description": "The main response class which holds the reports from the Reporting API\n`batchGet` call." + "id": "PivotValueRegion" }, - "SequenceSegment": { - "description": "Sequence conditions consist of one or more steps, where each step is defined\nby one or more dimension/metric conditions. Multiple steps can be combined\nwith special sequence operators.", + "Report": { "type": "object", "properties": { - "segmentSequenceSteps": { - "description": "The list of steps in the sequence.", - "items": { - "$ref": "SegmentSequenceStep" - }, - "type": "array" - }, - "firstStepShouldMatchFirstHit": { - "description": "If set, first step condition must match the first hit of the visitor (in\nthe date range).", - "type": "boolean" - } - }, - "id": "SequenceSegment" - }, - "SegmentMetricFilter": { - "properties": { - "metricName": { - "description": "The metric that will be filtered on. A `metricFilter` must contain a\nmetric name.", - "type": "string" - }, - "scope": { - "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.", - "type": "string" - }, - "maxComparisonValue": { - "description": "Max comparison value is only used for `BETWEEN` operator.", + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", "type": "string" }, - "comparisonValue": { - "description": "The value to compare against. If the operator is `BETWEEN`, this value is\ntreated as minimum comparison value.", - "type": "string" + "data": { + "$ref": "ReportData", + "description": "Response data." }, - "operator": { - "enum": [ - "UNSPECIFIED_OPERATOR", - "LESS_THAN", - "GREATER_THAN", - "EQUAL", - "BETWEEN" - ], - "description": "Specifies is the operation to perform to compare the metric. The default\nis `EQUAL`.", - "type": "string", - "enumDescriptions": [ - "Unspecified operator is treated as `LESS_THAN` operator.", - "Checks if the metric value is less than comparison value.", - "Checks if the metric value is greater than comparison value.", - "Equals operator.", - "For between operator, both the minimum and maximum are exclusive.\nWe will use `LT` and `GT` for comparison." - ] + "columnHeader": { + "description": "The column headers.", + "$ref": "ColumnHeader" } }, - "id": "SegmentMetricFilter", - "description": "Metric filter to be used in a segment filter clause.", - "type": "object" + "id": "Report", + "description": "The data response corresponding to the request." }, - "DateRangeValues": { - "type": "object", + "PivotHeader": { "properties": { - "values": { - "description": "Each value corresponds to each Metric in the request.", + "pivotHeaderEntries": { + "description": "A single pivot section header.", "items": { - "type": "string" + "$ref": "PivotHeaderEntry" }, "type": "array" }, - "pivotValueRegions": { - "description": "The values of each pivot region.", - "items": { - "$ref": "PivotValueRegion" - }, - "type": "array" + "totalPivotGroupsCount": { + "format": "int32", + "description": "The total number of groups for this pivot.", + "type": "integer" } }, - "id": "DateRangeValues", - "description": "Used to return a list of metrics for a single DateRange / dimension\ncombination" + "id": "PivotHeader", + "description": "The headers for each of the pivot sections defined in the request.", + "type": "object" }, - "CohortGroup": { - "description": "Defines a cohort group.\nFor example:\n\n \"cohortGroup\": {\n \"cohorts\": [{\n \"name\": \"cohort 1\",\n \"type\": \"FIRST_VISIT_DATE\",\n \"dateRange\": { \"startDate\": \"2015-08-01\", \"endDate\": \"2015-08-01\" }\n },{\n \"name\": \"cohort 2\"\n \"type\": \"FIRST_VISIT_DATE\"\n \"dateRange\": { \"startDate\": \"2015-07-01\", \"endDate\": \"2015-07-01\" }\n }]\n }", + "DateRange": { + "description": "A contiguous set of days: startDate, startDate + 1 day, ..., endDate.\nThe start and end dates are specified in\n[ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.", "type": "object", "properties": { - "cohorts": { - "description": "The definition for the cohort.", - "items": { - "$ref": "Cohort" - }, - "type": "array" + "startDate": { + "description": "The start date for the query in the format `YYYY-MM-DD`.", + "type": "string" }, - "lifetimeValue": { - "description": "Enable Life Time Value (LTV). LTV measures lifetime value for users\nacquired through different channels.\nPlease see:\n[Cohort Analysis](https://support.google.com/analytics/answer/6074676) and\n[Lifetime Value](https://support.google.com/analytics/answer/6182550)\nIf the value of lifetimeValue is false:\n\n- The metric values are similar to the values in the web interface cohort\n report.\n- The cohort definition date ranges must be aligned to the calendar week\n and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in\n the cohort definition should be a Sunday and the `endDate` should be the\n following Saturday, and for `ga:cohortNthMonth`, the `startDate`\n should be the 1st of the month and `endDate` should be the last day\n of the month.\n\nWhen the lifetimeValue is true:\n\n- The metric values will correspond to the values in the web interface\n LifeTime value report.\n- The Lifetime Value report shows you how user value (Revenue) and\n engagement (Appviews, Goal Completions, Sessions, and Session Duration)\n grow during the 90 days after a user is acquired.\n- The metrics are calculated as a cumulative average per user per the time\n increment.\n- The cohort definition date ranges need not be aligned to the calendar\n week and month boundaries.\n- The `viewId` must be an\n [app view ID](https://support.google.com/analytics/answer/2649553#WebVersusAppViews)", - "type": "boolean" - } - }, - "id": "CohortGroup" - }, - "GetReportsRequest": { - "description": "The batch request containing multiple report request.", - "type": "object", - "properties": { - "reportRequests": { - "items": { - "$ref": "ReportRequest" - }, - "type": "array", - "description": "Requests, each request will have a separate response.\nThere can be a maximum of 5 requests. All requests should have the same\n`dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`." + "endDate": { + "type": "string", + "description": "The end date for the query in the format `YYYY-MM-DD`." } }, - "id": "GetReportsRequest" + "id": "DateRange" }, - "Pivot": { + "ReportRequest": { + "description": "The main request class which specifies the Reporting API request.", "type": "object", "properties": { - "startGroup": { - "format": "int32", - "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.", - "type": "integer" + "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" + }, + "cohortGroup": { + "description": "Cohort group associated with this request. If there is a cohort group\nin the request the `ga:cohort` dimension must be present.\nEvery [ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `cohortGroup` definition.", + "$ref": "CohortGroup" + }, + "viewId": { + "description": "The Analytics\n[view ID](https://support.google.com/analytics/answer/1009618)\nfrom which to retrieve data. Every [ReportRequest](#ReportRequest)\nwithin a `batchGet` method must contain the same `viewId`.", + "type": "string" }, "metrics": { - "description": "The pivot metrics. Pivot metrics are part of the\nrestriction on total number of metrics allowed in the request.", + "description": "The metrics requested.\nRequests must specify at least one metric. Requests can have a\ntotal of 10 metrics.", "items": { "$ref": "Metric" }, "type": "array" }, "dimensionFilterClauses": { + "description": "The dimension filter clauses for filtering Dimension Values. They are\nlogically combined with the `AND` operator. Note that filtering occurs\nbefore any dimensions are aggregated, so that the returned metrics\nrepresent the total for only the relevant dimensions.", "items": { "$ref": "DimensionFilterClause" }, - "type": "array", - "description": "DimensionFilterClauses are logically combined with an `AND` operator: only\ndata that is included by all these DimensionFilterClauses contributes to\nthe values in this pivot region. Dimension filters can be used to restrict\nthe columns shown in the pivot region. For example if you have\n`ga:browser` as the requested dimension in the pivot region, and you\nspecify key filters to restrict `ga:browser` to only \"IE\" or \"Firefox\",\nthen only those two browsers would show up as columns." - }, - "dimensions": { - "description": "A list of dimensions to show as pivot columns. A Pivot can have a maximum\nof 4 dimensions. Pivot dimensions are part of the restriction on the\ntotal number of dimensions allowed in the request.", - "items": { - "$ref": "Dimension" - }, "type": "array" }, - "maxGroupCount": { - "format": "int32", - "description": "Specifies the maximum number of groups to return.\nThe default value is 10, also the maximum value is 1,000.", - "type": "integer" - } - }, - "id": "Pivot", - "description": "The Pivot describes the pivot section in the request.\nThe Pivot helps rearrange the information in the table for certain reports\nby pivoting your data on a second dimension." - }, - "PivotHeaderEntry": { - "description": "The headers for the each of the metric column corresponding to the metrics\nrequested in the pivots section of the response.", - "type": "object", - "properties": { - "metric": { - "$ref": "MetricHeaderEntry", - "description": "The metric header for the metric in the pivot." - }, - "dimensionNames": { - "description": "The name of the dimensions in the pivot response.", + "orderBys": { + "description": "Sort order on output rows. To compare two rows, the elements of the\nfollowing are applied in order until a difference is found. All date\nranges in the output get the same row order.", "items": { - "type": "string" + "$ref": "OrderBy" }, "type": "array" }, - "dimensionValues": { + "segments": { "items": { - "type": "string" + "$ref": "Segment" }, "type": "array", - "description": "The values for the dimensions in the pivot." - } - }, - "id": "PivotHeaderEntry" - }, - "SegmentFilter": { - "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." - }, - "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" + "description": "Segment the data returned for the request. A segment definition helps look\nat a subset of the segment request. A request can contain up to four\nsegments. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `segments` definition. Requests\nwith segments must have the `ga:segment` dimension." }, - "simpleSegment": { - "$ref": "SimpleSegment", - "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined" - } - }, - "id": "SegmentFilter", - "description": "SegmentFilter defines the segment to be either a simple or a sequence\nsegment. A simple segment condition contains dimension and metric conditions\nto select the sessions or users. A sequence segment condition can be used to\nselect users or sessions based on sequential conditions.", - "type": "object" - }, - "SegmentDefinition": { - "id": "SegmentDefinition", - "description": "SegmentDefinition defines the segment to be a set of SegmentFilters which\nare combined together with a logical `AND` operation.", - "type": "object", - "properties": { - "segmentFilters": { - "description": "A segment is defined by a set of segment filters which are combined\ntogether with a logical `AND` operation.", - "items": { - "$ref": "SegmentFilter" - }, - "type": "array" - } - } - }, - "MetricHeaderEntry": { - "properties": { - "name": { - "description": "The name of the header.", - "type": "string" - }, - "type": { - "type": "string", + "samplingLevel": { "enumDescriptions": [ - "Metric type is unspecified.", - "Integer metric.", - "Float metric.", - "Currency metric.", - "Percentage metric.", - "Time metric in `HH:MM:SS` format." + "If the `samplingLevel` field is unspecified the `DEFAULT` sampling level\nis used.", + "Returns response with a sample size that balances speed and\naccuracy.", + "It returns a fast response with a smaller sampling size.", + "Returns a more accurate response using a large sampling size. But this\nmay result in response being slower." ], "enum": [ - "METRIC_TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "CURRENCY", - "PERCENT", - "TIME" + "SAMPLING_UNSPECIFIED", + "DEFAULT", + "SMALL", + "LARGE" ], - "description": "The type of the metric, for example `INTEGER`." - } - }, - "id": "MetricHeaderEntry", - "description": "Header for the metrics.", - "type": "object" - }, - "ReportData": { - "description": "The data part of the report.", - "type": "object", - "properties": { - "samplingSpaceSizes": { - "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of\nsamples present, one entry per date range. If the results are not sampled\nthis field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" + "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" }, - "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.", + "dimensions": { + "description": "The dimensions requested.\nRequests can have a total of 7 dimensions.", "items": { - "$ref": "DateRangeValues" + "$ref": "Dimension" }, "type": "array" }, - "totals": { - "description": "For each requested date range, for the set of all rows that match\nthe query, every requested value format gets a total. The total\nfor a value format is computed by first totaling the metrics\nmentioned in the value format and then evaluating the value\nformat as a scalar expression. E.g., The \"totals\" for\n`3 / (ga:sessions + 2)` we compute\n`3 / ((sum of all relevant ga:sessions) + 2)`.\nTotals are computed before pagination.", + "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" + }, + "dateRanges": { + "description": "Date ranges in the request. The request can have a maximum of 2 date\nranges. The response will contain a set of metric values for each\ncombination of the dimensions for each date range in the request. So, if\nthere are two date ranges, there will be two set of metric values, one for\nthe original date range and one for the second date range.\nThe `reportRequest.dateRanges` field should not be specified for cohorts\nor Lifetime value requests.\nIf a date range is not provided, the default date range is (startDate:\ncurrent date - 7 days, endDate: current date - 1 day). Every\n[ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `dateRanges` definition.", "items": { - "$ref": "DateRangeValues" + "$ref": "DateRange" }, "type": "array" }, - "samplesReadCounts": { - "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of samples read, one entry per date range.\nIf the results are not sampled this field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", + "pivots": { + "description": "The pivot definitions. Requests can have a maximum of 2 pivots.", "items": { - "format": "int64", - "type": "string" + "$ref": "Pivot" }, "type": "array" }, - "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.", + "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" }, - "rows": { - "description": "There's one ReportRow for every unique combination of dimensions.", + "metricFilterClauses": { + "description": "The metric filter clauses. They are logically combined with the `AND`\noperator. Metric filters look at only the first date range and not the\ncomparing date range. Note that filtering on metrics occurs after the\nmetrics are aggregated.", "items": { - "$ref": "ReportRow" + "$ref": "MetricFilterClause" }, "type": "array" }, - "rowCount": { + "pageSize": { "format": "int32", - "description": "Total number of matching rows for this query.", + "description": "Page size is for paging and specifies the maximum number of returned rows.\nPage size should be \u003e= 0. A query returns the default of 1,000 rows.\nThe Analytics Core Reporting API returns a maximum of 10,000 rows per\nrequest, no matter how many you ask for. It can also return fewer rows\nthan requested, if there aren't as many dimension segments as you expect.\nFor instance, there are fewer than 300 possible values for `ga:country`,\nso when segmenting only by country, you can't get more than 300 rows,\neven if you set `pageSize` to a higher value.", "type": "integer" }, - "dataLastRefreshed": { - "format": "google-datetime", - "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.", - "type": "string" + "hideTotals": { + "description": "If set to true, hides the total of all metrics for all the matching rows,\nfor every date range. The default false and will return the totals.", + "type": "boolean" }, - "maximums": { - "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", - "items": { - "$ref": "DateRangeValues" - }, - "type": "array" + "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" } }, - "id": "ReportData" + "id": "ReportRequest" }, - "DimensionFilter": { - "description": "Dimension filter specifies the filtering options on a dimension.", + "MetricFilter": { + "id": "MetricFilter", + "description": "MetricFilter specifies the filter on a metric.", "type": "object", "properties": { - "caseSensitive": { - "description": "Should the match be case sensitive? Default is false.", - "type": "boolean" + "metricName": { + "type": "string", + "description": "The metric that will be filtered on. A metricFilter must contain a metric\nname. A metric name can be an alias earlier defined as a metric or it can\nalso be a metric expression." + }, + "comparisonValue": { + "description": "The value to compare against.", + "type": "string" }, "operator": { + "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.", + "Should the value of the metric be less than to the comparison value.", + "Should the value of the metric be greater than to the comparison value.", + "Validates if the metric is missing.\nDoesn't take comparisonValue into account." + ], "enum": [ "OPERATOR_UNSPECIFIED", - "REGEXP", - "BEGINS_WITH", - "ENDS_WITH", - "PARTIAL", - "EXACT", - "NUMERIC_EQUAL", - "NUMERIC_GREATER_THAN", - "NUMERIC_LESS_THAN", - "IN_LIST" + "EQUAL", + "LESS_THAN", + "GREATER_THAN", + "IS_MISSING" ], - "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.", - "Matches the value which begin with the match expression provided.", - "Matches the values which end with the match expression provided.", - "Substring match.", - "The value should match the match expression entirely.", - "Integer comparison filters.\ncase sensitivity is ignored for these and the expression\nis assumed to be a string representing an integer.\nFailure conditions:\n\n- If expression is not a valid int64, the client should expect\n an error.\n- Input dimensions that are not valid int64 values will never match the\n filter.", - "Checks if the dimension is numerically greater than the match\nexpression. Read the description for `NUMERIC_EQUALS` for restrictions.", - "Checks if the dimension is numerically less than the match expression.\nRead the description for `NUMERIC_EQUALS` for restrictions.", - "This option is used to specify a dimension filter whose expression can\ntake any value from a selected list of values. This helps avoiding\nevaluating multiple exact match dimension filters which are OR'ed for\nevery single response row. For example:\n\n expressions: [\"A\", \"B\", \"C\"]\n\nAny response row whose dimension has it is value as A, B or C, matches\nthis DimensionFilter." - ] - }, - "dimensionName": { - "description": "The dimension to filter on. A DimensionFilter must contain a dimension.", - "type": "string" + "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." }, - "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.", + "not": { + "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\nmetric values will be excluded in the report. The default is false.", + "type": "boolean" + } + } + }, + "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": { + "description": "If non-empty, we place dimension values into buckets after string to\nint64. Dimension values that are not the string representation of an\nintegral value will be converted to zero. The bucket values have to be in\nincreasing order. Each bucket is closed on the lower end, and open on the\nupper end. The \"first\" bucket includes all values less than the first\nboundary, the \"last\" bucket includes all values up to infinity. Dimension\nvalues that fall in a bucket get transformed to a new dimension value. For\nexample, if one gives a list of \"0, 1, 3, 4, 7\", then we return the\nfollowing buckets:\n\n- bucket #1: values \u003c 0, dimension value \"\u003c0\"\n- bucket #2: values in [0,1), dimension value \"0\"\n- bucket #3: values in [1,3), dimension value \"1-2\"\n- bucket #4: values in [3,4), dimension value \"3\"\n- bucket #5: values in [4,7), dimension value \"4-6\"\n- bucket #6: values \u003e= 7, dimension value \"7+\"\n\nNOTE: If you are applying histogram mutation on any dimension, and using\nthat dimension in sort, you will want to use the sort type\n`HISTOGRAM_BUCKET` for that purpose. Without that the dimension values\nwill be sorted according to dictionary\n(lexicographic) order. For example the ascending dictionary order is:\n\n \"\u003c50\", \"1001+\", \"121-1000\", \"50-120\"\n\nAnd the ascending `HISTOGRAM_BUCKET` order is:\n\n \"\u003c50\", \"50-120\", \"121-1000\", \"1001+\"\n\nThe client has to explicitly request `\"orderType\": \"HISTOGRAM_BUCKET\"`\nfor a histogram-mutated dimension.", "items": { + "format": "int64", "type": "string" }, "type": "array" }, - "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" + "name": { + "description": "Name of the dimension to fetch, for example `ga:browser`.", + "type": "string" } }, - "id": "DimensionFilter" + "id": "Dimension" }, - "SegmentDimensionFilter": { - "description": "Dimension filter specifies the filtering options on a dimension.", + "SimpleSegment": { + "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined.", "type": "object", "properties": { - "maxComparisonValue": { - "description": "Maximum comparison values for `BETWEEN` match type.", - "type": "string" + "orFiltersForSegment": { + "description": "A list of segment filters groups which are combined with logical `AND`\noperator.", + "items": { + "$ref": "OrFiltersForSegment" + }, + "type": "array" + } + }, + "id": "SimpleSegment" + }, + "DynamicSegment": { + "description": "Dynamic segment definition for defining the segment within the request.\nA segment can select users, sessions or both.", + "type": "object", + "properties": { + "userSegment": { + "$ref": "SegmentDefinition", + "description": "User Segment to select users to include in the segment." }, - "dimensionName": { - "description": "Name of the dimension for which the filter is being applied.", - "type": "string" + "sessionSegment": { + "$ref": "SegmentDefinition", + "description": "Session Segment to select sessions to include in the segment." }, - "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", - "BEGINS_WITH", - "ENDS_WITH", - "PARTIAL", - "EXACT", - "IN_LIST", - "NUMERIC_LESS_THAN", - "NUMERIC_GREATER_THAN", - "NUMERIC_BETWEEN" - ], - "description": "The operator to use to match the dimension with the expressions.", + "name": { + "description": "The name of the dynamic segment.", "type": "string" - }, - "expressions": { - "description": "The list of expressions, only the first element is used for all operators", + } + }, + "id": "DynamicSegment" + }, + "ColumnHeader": { + "description": "Column headers.", + "type": "object", + "properties": { + "dimensions": { "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "The dimension names in the response." }, - "caseSensitive": { - "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", + "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": { + "not": { + "description": "Matches the complement (`!`) of the filter.", "type": "boolean" }, - "minComparisonValue": { - "description": "Minimum comparison values for `BETWEEN` match type.", - "type": "string" + "dimensionFilter": { + "$ref": "SegmentDimensionFilter", + "description": "Dimension Filter for the segment definition." + }, + "metricFilter": { + "description": "Metric Filter for the segment definition.", + "$ref": "SegmentMetricFilter" } }, - "id": "SegmentDimensionFilter" + "id": "SegmentFilterClause" }, - "OrderBy": { - "description": "Specifies the sorting options.", + "ReportRow": { + "description": "A row in the report.", "type": "object", "properties": { - "orderType": { + "metrics": { + "description": "List of metrics for each requested DateRange.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "dimensions": { + "description": "List of requested dimensions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "ReportRow" + }, + "Cohort": { + "type": "object", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "This is used for `FIRST_VISIT_DATE` cohort, the cohort selects users\nwhose first visit date is between start date and end date defined in the\nDateRange. The date ranges should be aligned for cohort requests. If the\nrequest contains `ga:cohortNthDay` it should be exactly one day long,\nif `ga:cohortNthWeek` it should be aligned to the week boundary (starting\nat Sunday and ending Saturday), and for `ga:cohortNthMonth` the date range\nshould be aligned to the month (starting at the first and ending on the\nlast day of the month).\nFor LTV requests there are no such restrictions.\nYou do not need to supply a date range for the\n`reportsRequest.dateRanges` field." + }, + "name": { + "description": "A unique name for the cohort. If not defined name will be auto-generated\nwith values cohort_[1234...].", + "type": "string" + }, + "type": { + "enumDescriptions": [ + "If unspecified it's treated as `FIRST_VISIT_DATE`.", + "Cohorts that are selected based on first visit date." + ], "enum": [ - "ORDER_TYPE_UNSPECIFIED", - "VALUE", - "DELTA", - "SMART", - "HISTOGRAM_BUCKET", - "DIMENSION_AS_INTEGER" + "UNSPECIFIED_COHORT_TYPE", + "FIRST_VISIT_DATE" ], - "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." - ] - }, - "fieldName": { - "description": "The field which to sort by. The default sort order is ascending. Example:\n`ga:browser`.\nNote, that you can only specify one field for sort here. For example,\n`ga:browser, ga:city` is not valid.", + "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", + "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." + }, + "MetricFilterClause": { + "description": "Represents a group of metric filters.\nSet the operator value to specify how the filters are logically combined.", + "type": "object", + "properties": { + "filters": { + "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", + "items": { + "$ref": "MetricFilter" + }, + "type": "array" }, - "sortOrder": { - "description": "The sorting order for the field.", + "operator": { + "description": "The operator for combining multiple metric filters. If unspecified, it is\ntreated as an `OR`.", "type": "string", "enumDescriptions": [ - "If the sort order is unspecified, the default is ascending.", - "Ascending sort. The field will be sorted in an ascending manner.", - "Descending sort. The field will be sorted in a descending manner." + "Unspecified operator. It is treated as an `OR`.", + "The logical `OR` operator.", + "The logical `AND` operator." ], "enum": [ - "SORT_ORDER_UNSPECIFIED", - "ASCENDING", - "DESCENDING" + "OPERATOR_UNSPECIFIED", + "OR", + "AND" ] } }, - "id": "OrderBy" + "id": "MetricFilterClause" }, - "Segment": { - "description": "The segment definition, if the report needs to be segmented.\nA Segment is a subset of the Analytics data. For example, of the entire\nset of users, one Segment might be users from a particular country or city.", - "type": "object", + "OrFiltersForSegment": { "properties": { - "dynamicSegment": { - "$ref": "DynamicSegment", - "description": "A dynamic segment definition in the request." + "segmentFilterClauses": { + "description": "List of segment filters to be combined with a `OR` operator.", + "items": { + "$ref": "SegmentFilterClause" + }, + "type": "array" + } + }, + "id": "OrFiltersForSegment", + "description": "A list of segment filters in the `OR` group are combined with the logical OR\noperator.", + "type": "object" + }, + "MetricHeader": { + "id": "MetricHeader", + "description": "The headers for the metrics.", + "type": "object", + "properties": { + "metricHeaderEntries": { + "description": "Headers for the metrics in the response.", + "items": { + "$ref": "MetricHeaderEntry" + }, + "type": "array" }, - "segmentId": { - "type": "string", - "description": "The segment ID of a built-in or custom segment, for example `gaid::-3`." + "pivotHeaders": { + "description": "Headers for the pivots in the response.", + "items": { + "$ref": "PivotHeader" + }, + "type": "array" } - }, - "id": "Segment" + } }, - "SegmentSequenceStep": { - "description": "A segment sequence definition.", + "DimensionFilterClause": { + "description": "A group of dimension filters. Set the operator value to specify how\nthe filters are logically combined.", "type": "object", "properties": { - "orFiltersForSegment": { - "description": "A sequence is specified with a list of Or grouped filters which are\ncombined with `AND` operator.", + "filters": { + "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", "items": { - "$ref": "OrFiltersForSegment" + "$ref": "DimensionFilter" }, "type": "array" }, - "matchType": { + "operator": { "enumDescriptions": [ - "Unspecified match type is treated as precedes.", - "Operator indicates that the previous step precedes the next step.", - "Operator indicates that the previous step immediately precedes the next\nstep." + "Unspecified operator. It is treated as an `OR`.", + "The logical `OR` operator.", + "The logical `AND` operator." ], "enum": [ - "UNSPECIFIED_MATCH_TYPE", - "PRECEDES", - "IMMEDIATELY_PRECEDES" + "OPERATOR_UNSPECIFIED", + "OR", + "AND" ], - "description": "Specifies if the step immediately precedes or can be any time before the\nnext step.", + "description": "The operator for combining multiple dimension filters. If unspecified, it\nis treated as an `OR`.", "type": "string" } }, - "id": "SegmentSequenceStep" + "id": "DimensionFilterClause" }, - "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.", + "GetReportsResponse": { + "id": "GetReportsResponse", + "description": "The main response class which holds the reports from the Reporting API\n`batchGet` call.", "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.", - "type": "string" - }, - "formattingType": { - "enum": [ - "METRIC_TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "CURRENCY", - "PERCENT", - "TIME" - ], - "description": "Specifies how the metric expression should be formatted, for example\n`INTEGER`.", - "type": "string", - "enumDescriptions": [ - "Metric type is unspecified.", - "Integer metric.", - "Float metric.", - "Currency metric.", - "Percentage metric.", - "Time metric in `HH:MM:SS` format." - ] - }, - "alias": { - "description": "An alias for the metric expression is an alternate name for the\nexpression. The alias can be used for filtering and sorting. This field\nis optional and is useful if the expression is not a single metric but\na complex expression which cannot be used in filtering and sorting.\nThe alias is also used in the response column header.", - "type": "string" + "reports": { + "description": "Responses corresponding to each of the request.", + "items": { + "$ref": "Report" + }, + "type": "array" } } }, - "PivotValueRegion": { - "description": "The metric values in the pivot region.", - "type": "object", + "SequenceSegment": { "properties": { - "values": { - "description": "The values of the metrics in each of the pivot regions.", + "firstStepShouldMatchFirstHit": { + "type": "boolean", + "description": "If set, first step condition must match the first hit of the visitor (in\nthe date range)." + }, + "segmentSequenceSteps": { + "description": "The list of steps in the sequence.", "items": { - "type": "string" + "$ref": "SegmentSequenceStep" }, "type": "array" } }, - "id": "PivotValueRegion" + "id": "SequenceSegment", + "description": "Sequence conditions consist of one or more steps, where each step is defined\nby one or more dimension/metric conditions. Multiple steps can be combined\nwith special sequence operators.", + "type": "object" }, - "Report": { + "SegmentMetricFilter": { + "description": "Metric filter to be used in a segment filter clause.", + "type": "object", "properties": { - "nextPageToken": { - "description": "Page token to retrieve the next page of results in the list.", + "metricName": { + "description": "The metric that will be filtered on. A `metricFilter` must contain a\nmetric name.", "type": "string" }, - "data": { - "description": "Response data.", - "$ref": "ReportData" + "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" + ] }, - "columnHeader": { - "$ref": "ColumnHeader", - "description": "The column headers." + "maxComparisonValue": { + "description": "Max comparison value is only used for `BETWEEN` operator.", + "type": "string" + }, + "comparisonValue": { + "description": "The value to compare against. If the operator is `BETWEEN`, this value is\ntreated as minimum comparison value.", + "type": "string" + }, + "operator": { + "enum": [ + "UNSPECIFIED_OPERATOR", + "LESS_THAN", + "GREATER_THAN", + "EQUAL", + "BETWEEN" + ], + "description": "Specifies is the operation to perform to compare the metric. The default\nis `EQUAL`.", + "type": "string", + "enumDescriptions": [ + "Unspecified operator is treated as `LESS_THAN` operator.", + "Checks if the metric value is less than comparison value.", + "Checks if the metric value is greater than comparison value.", + "Equals operator.", + "For between operator, both the minimum and maximum are exclusive.\nWe will use `LT` and `GT` for comparison." + ] } }, - "id": "Report", - "description": "The data response corresponding to the request.", - "type": "object" + "id": "SegmentMetricFilter" }, - "PivotHeader": { - "description": "The headers for each of the pivot sections defined in the request.", + "DateRangeValues": { + "description": "Used to return a list of metrics for a single DateRange / dimension\ncombination", "type": "object", "properties": { - "pivotHeaderEntries": { - "description": "A single pivot section header.", + "values": { + "description": "Each value corresponds to each Metric in the request.", "items": { - "$ref": "PivotHeaderEntry" + "type": "string" }, "type": "array" }, - "totalPivotGroupsCount": { - "format": "int32", - "description": "The total number of groups for this pivot.", - "type": "integer" + "pivotValueRegions": { + "description": "The values of each pivot region.", + "items": { + "$ref": "PivotValueRegion" + }, + "type": "array" } }, - "id": "PivotHeader" + "id": "DateRangeValues" }, - "DateRange": { - "description": "A contiguous set of days: startDate, startDate + 1 day, ..., endDate.\nThe start and end dates are specified in\n[ISO8601](https://en.wikipedia.org/wiki/ISO_8601) date format `YYYY-MM-DD`.", + "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": { - "endDate": { - "description": "The end date for the query in the format `YYYY-MM-DD`.", - "type": "string" + "lifetimeValue": { + "description": "Enable Life Time Value (LTV). LTV measures lifetime value for users\nacquired through different channels.\nPlease see:\n[Cohort Analysis](https://support.google.com/analytics/answer/6074676) and\n[Lifetime Value](https://support.google.com/analytics/answer/6182550)\nIf the value of lifetimeValue is false:\n\n- The metric values are similar to the values in the web interface cohort\n report.\n- The cohort definition date ranges must be aligned to the calendar week\n and month. i.e. while requesting `ga:cohortNthWeek` the `startDate` in\n the cohort definition should be a Sunday and the `endDate` should be the\n following Saturday, and for `ga:cohortNthMonth`, the `startDate`\n should be the 1st of the month and `endDate` should be the last day\n of the month.\n\nWhen the lifetimeValue is true:\n\n- The metric values will correspond to the values in the web interface\n LifeTime value report.\n- The Lifetime Value report shows you how user value (Revenue) and\n engagement (Appviews, Goal Completions, Sessions, and Session Duration)\n grow during the 90 days after a user is acquired.\n- The metrics are calculated as a cumulative average per user per the time\n increment.\n- The cohort definition date ranges need not be aligned to the calendar\n week and month boundaries.\n- The `viewId` must be an\n [app view ID](https://support.google.com/analytics/answer/2649553#WebVersusAppViews)", + "type": "boolean" }, - "startDate": { - "description": "The start date for the query in the format `YYYY-MM-DD`.", - "type": "string" + "cohorts": { + "items": { + "$ref": "Cohort" + }, + "type": "array", + "description": "The definition for the cohort." } }, - "id": "DateRange" + "id": "CohortGroup" }, - "ReportRequest": { - "description": "The main request class which specifies the Reporting API request.", + "GetReportsRequest": { + "description": "The batch request containing multiple report request.", "type": "object", "properties": { - "pivots": { - "description": "The pivot definitions. Requests can have a maximum of 2 pivots.", - "items": { - "$ref": "Pivot" - }, - "type": "array" - }, - "includeEmptyRows": { - "type": "boolean", - "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." - }, - "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.", + "reportRequests": { + "description": "Requests, each request will have a separate response.\nThere can be a maximum of 5 requests. All requests should have the same\n`dateRanges`, `viewId`, `segments`, `samplingLevel`, and `cohortGroup`.", "items": { - "$ref": "MetricFilterClause" + "$ref": "ReportRequest" }, "type": "array" - }, - "pageSize": { + } + }, + "id": "GetReportsRequest" + }, + "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": { + "startGroup": { "format": "int32", - "description": "Page size is for paging and specifies the maximum number of returned rows.\nPage size should be \u003e= 0. A query returns the default of 1,000 rows.\nThe Analytics Core Reporting API returns a maximum of 10,000 rows per\nrequest, no matter how many you ask for. It can also return fewer rows\nthan requested, if there aren't as many dimension segments as you expect.\nFor instance, there are fewer than 300 possible values for `ga:country`,\nso when segmenting only by country, you can't get more than 300 rows,\neven if you set `pageSize` to a higher value.", + "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.", "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" - }, - "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." - }, - "filtersExpression": { - "description": "Dimension or metric filters that restrict the data returned for your\nrequest. To use the `filtersExpression`, supply a dimension or metric on\nwhich to filter, followed by the filter expression. For example, the\nfollowing expression selects `ga:browser` dimension which starts with\nFirefox; `ga:browser=~^Firefox`. For more information on dimensions\nand metric filters, see\n[Filters reference](https://developers.google.com/analytics/devguides/reporting/core/v3/reference#filters).", - "type": "string" - }, - "viewId": { - "description": "The Analytics\n[view ID](https://support.google.com/analytics/answer/1009618)\nfrom which to retrieve data. Every [ReportRequest](#ReportRequest)\nwithin a `batchGet` method must contain the same `viewId`.", - "type": "string" - }, "metrics": { - "description": "The metrics requested.\nRequests must specify at least one metric. Requests can have a\ntotal of 10 metrics.", + "description": "The pivot metrics. Pivot metrics are part of the\nrestriction on total number of metrics allowed in the request.", "items": { "$ref": "Metric" }, "type": "array" }, "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.", + "description": "DimensionFilterClauses are logically combined with an `AND` operator: only\ndata that is included by all these DimensionFilterClauses contributes to\nthe values in this pivot region. Dimension filters can be used to restrict\nthe columns shown in the pivot region. For example if you have\n`ga:browser` as the requested dimension in the pivot region, and you\nspecify key filters to restrict `ga:browser` to only \"IE\" or \"Firefox\",\nthen only those two browsers would show up as columns.", "items": { "$ref": "DimensionFilterClause" }, "type": "array" }, - "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.", + "dimensions": { + "description": "A list of dimensions to show as pivot columns. A Pivot can have a maximum\nof 4 dimensions. Pivot dimensions are part of the restriction on the\ntotal number of dimensions allowed in the request.", "items": { - "$ref": "OrderBy" + "$ref": "Dimension" }, "type": "array" }, - "segments": { - "description": "Segment the data returned for the request. A segment definition helps look\nat a subset of the segment request. A request can contain up to four\nsegments. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `segments` definition. Requests\nwith segments must have the `ga:segment` dimension.", + "maxGroupCount": { + "format": "int32", + "description": "Specifies the maximum number of groups to return.\nThe default value is 10, also the maximum value is 1,000.", + "type": "integer" + } + }, + "id": "Pivot" + }, + "PivotHeaderEntry": { + "type": "object", + "properties": { + "dimensionValues": { + "description": "The values for the dimensions in the pivot.", "items": { - "$ref": "Segment" + "type": "string" }, "type": "array" }, - "samplingLevel": { - "enumDescriptions": [ - "If the `samplingLevel` field is unspecified the `DEFAULT` sampling level\nis used.", - "Returns response with a sample size that balances speed and\naccuracy.", - "It returns a fast response with a smaller sampling size.", - "Returns a more accurate response using a large sampling size. But this\nmay result in response being slower." - ], - "enum": [ - "SAMPLING_UNSPECIFIED", - "DEFAULT", - "SMALL", - "LARGE" - ], - "description": "The desired report\n[sample](https://support.google.com/analytics/answer/2637192) size.\nIf the the `samplingLevel` field is unspecified the `DEFAULT` sampling\nlevel is used. Every [ReportRequest](#ReportRequest) within a\n`batchGet` method must contain the same `samplingLevel` definition. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\n for details.", - "type": "string" + "metric": { + "$ref": "MetricHeaderEntry", + "description": "The metric header for the metric in the pivot." }, - "dimensions": { - "description": "The dimensions requested.\nRequests can have a total of 7 dimensions.", + "dimensionNames": { + "description": "The name of the dimensions in the pivot response.", "items": { - "$ref": "Dimension" + "type": "string" }, "type": "array" + } + }, + "id": "PivotHeaderEntry", + "description": "The headers for the each of the metric column corresponding to the metrics\nrequested in the pivots section of the response." + }, + "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": { + "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" }, - "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" + "simpleSegment": { + "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined", + "$ref": "SimpleSegment" }, - "dateRanges": { - "description": "Date ranges in the request. The request can have a maximum of 2 date\nranges. The response will contain a set of metric values for each\ncombination of the dimensions for each date range in the request. So, if\nthere are two date ranges, there will be two set of metric values, one for\nthe original date range and one for the second date range.\nThe `reportRequest.dateRanges` field should not be specified for cohorts\nor Lifetime value requests.\nIf a date range is not provided, the default date range is (startDate:\ncurrent date - 7 days, endDate: current date - 1 day). Every\n[ReportRequest](#ReportRequest) within a `batchGet` method must\ncontain the same `dateRanges` definition.", + "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." + } + } + }, + "SegmentDefinition": { + "type": "object", + "properties": { + "segmentFilters": { + "description": "A segment is defined by a set of segment filters which are combined\ntogether with a logical `AND` operation.", "items": { - "$ref": "DateRange" + "$ref": "SegmentFilter" }, "type": "array" } }, - "id": "ReportRequest" + "id": "SegmentDefinition", + "description": "SegmentDefinition defines the segment to be a set of SegmentFilters which\nare combined together with a logical `AND` operation." }, - "MetricFilter": { - "description": "MetricFilter specifies the filter on a metric.", + "MetricHeaderEntry": { + "description": "Header for the metrics.", "type": "object", "properties": { - "comparisonValue": { - "description": "The value to compare against.", + "name": { + "description": "The name of the header.", "type": "string" }, - "operator": { + "type": { "enumDescriptions": [ - "If the operator is not specified, it is treated as `EQUAL`.", - "Should the value of the metric be exactly equal to the comparison value.", - "Should the value of the metric be less than to the comparison value.", - "Should the value of the metric be greater than to the comparison value.", - "Validates if the metric is missing.\nDoesn't take comparisonValue into account." + "Metric type is unspecified.", + "Integer metric.", + "Float metric.", + "Currency metric.", + "Percentage metric.", + "Time metric in `HH:MM:SS` format." ], "enum": [ - "OPERATOR_UNSPECIFIED", - "EQUAL", - "LESS_THAN", - "GREATER_THAN", - "IS_MISSING" + "METRIC_TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "CURRENCY", + "PERCENT", + "TIME" ], - "description": "Is the metric `EQUAL`, `LESS_THAN` or `GREATER_THAN` the\ncomparisonValue, the default is `EQUAL`. If the operator is\n`IS_MISSING`, checks if the metric is missing and would ignore the\ncomparisonValue.", - "type": "string" - }, - "not": { - "description": "Logical `NOT` operator. If this boolean is set to true, then the matching\nmetric values will be excluded in the report. The default is false.", - "type": "boolean" - }, - "metricName": { - "description": "The metric that will be filtered on. A metricFilter must contain a metric\nname. A metric name can be an alias earlier defined as a metric or it can\nalso be a metric expression.", + "description": "The type of the metric, for example `INTEGER`.", "type": "string" } }, - "id": "MetricFilter" + "id": "MetricHeaderEntry" }, - "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.", + "ReportData": { + "description": "The data part of the report.", "type": "object", "properties": { - "histogramBuckets": { - "description": "If non-empty, we place dimension values into buckets after string to\nint64. Dimension values that are not the string representation of an\nintegral value will be converted to zero. The bucket values have to be in\nincreasing order. Each bucket is closed on the lower end, and open on the\nupper end. The \"first\" bucket includes all values less than the first\nboundary, the \"last\" bucket includes all values up to infinity. Dimension\nvalues that fall in a bucket get transformed to a new dimension value. For\nexample, if one gives a list of \"0, 1, 3, 4, 7\", then we return the\nfollowing buckets:\n\n- bucket #1: values \u003c 0, dimension value \"\u003c0\"\n- bucket #2: values in [0,1), dimension value \"0\"\n- bucket #3: values in [1,3), dimension value \"1-2\"\n- bucket #4: values in [3,4), dimension value \"3\"\n- bucket #5: values in [4,7), dimension value \"4-6\"\n- bucket #6: values \u003e= 7, dimension value \"7+\"\n\nNOTE: If you are applying histogram mutation on any dimension, and using\nthat dimension in sort, you will want to use the sort type\n`HISTOGRAM_BUCKET` for that purpose. Without that the dimension values\nwill be sorted according to dictionary\n(lexicographic) order. For example the ascending dictionary order is:\n\n \"\u003c50\", \"1001+\", \"121-1000\", \"50-120\"\n\nAnd the ascending `HISTOGRAM_BUCKET` order is:\n\n \"\u003c50\", \"50-120\", \"121-1000\", \"1001+\"\n\nThe client has to explicitly request `\"orderType\": \"HISTOGRAM_BUCKET\"`\nfor a histogram-mutated dimension.", + "dataLastRefreshed": { + "format": "google-datetime", + "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.", + "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.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "minimums": { + "description": "Minimum and maximum values seen over all matching rows. These are both\nempty when `hideValueRanges` in the request is false, or when\nrowCount is zero.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "samplingSpaceSizes": { + "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of\nsamples present, one entry per date range. If the results are not sampled\nthis field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", "items": { "format": "int64", "type": "string" }, "type": "array" }, - "name": { - "description": "Name of the dimension to fetch, for example `ga:browser`.", - "type": "string" + "totals": { + "description": "For each requested date range, for the set of all rows that match\nthe query, every requested value format gets a total. The total\nfor a value format is computed by first totaling the metrics\nmentioned in the value format and then evaluating the value\nformat as a scalar expression. E.g., The \"totals\" for\n`3 / (ga:sessions + 2)` we compute\n`3 / ((sum of all relevant ga:sessions) + 2)`.\nTotals are computed before pagination.", + "items": { + "$ref": "DateRangeValues" + }, + "type": "array" + }, + "samplesReadCounts": { + "description": "If the results are\n[sampled](https://support.google.com/analytics/answer/2637192),\nthis returns the total number of samples read, one entry per date range.\nIf the results are not sampled this field will not be defined. See\n[developer guide](/analytics/devguides/reporting/core/v4/basics#sampling)\nfor details.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + }, + "rowCount": { + "format": "int32", + "description": "Total number of matching rows for this query.", + "type": "integer" + }, + "rows": { + "description": "There's one ReportRow for every unique combination of dimensions.", + "items": { + "$ref": "ReportRow" + }, + "type": "array" + }, + "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" } }, - "id": "Dimension" + "id": "ReportData" } }, + "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": "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" } } } @@ -1045,33 +1051,54 @@ "reports": { "methods": { "batchGet": { + "id": "analyticsreporting.reports.batchGet", + "path": "v4/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" ], - "parameters": {}, - "flatPath": "v4/reports:batchGet", - "id": "analyticsreporting.reports.batchGet", - "path": "v4/reports:batchGet" + "flatPath": "v4/reports:batchGet" } } } }, "parameters": { + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "fields": { "location": "query", @@ -1084,24 +1111,30 @@ "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" + ], + "description": "V1 error format." }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -1109,18 +1142,12 @@ "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] + "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" + "type": "string", + "location": "query" }, "access_token": { "location": "query", @@ -1128,36 +1155,9 @@ "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.", - "default": "true", - "type": "boolean" - }, - "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\").", + "description": "Available 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": "v4", - "baseUrl": "https://analyticsreporting.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Accesses Analytics report data.", - "servicePath": "", - "basePath": "" + } } diff --git a/DiscoveryJson/androidenterprise_v1.json b/DiscoveryJson/androidenterprise_v1.json index 8fb73692a1..92c4f2ca21 100644 --- a/DiscoveryJson/androidenterprise_v1.json +++ b/DiscoveryJson/androidenterprise_v1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/H9duqVdKTSndf2JIlZN75jlKC_0\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/aM0tDDB5DvmOPRRf6gTQ7sXnX-8\"", "discoveryVersion": "v1", "id": "androidenterprise:v1", "name": "androidenterprise", "canonicalName": "Android Enterprise", "version": "v1", - "revision": "20170706", + "revision": "20170713", "title": "Google Play EMM API", "description": "Manages the deployment of apps to Android for Work users.", "ownerDomain": "google.com", @@ -127,6 +127,22 @@ } } }, + "AndroidDevicePolicyConfig": { + "id": "AndroidDevicePolicyConfig", + "type": "object", + "description": "The Android Device Policy configuration of an enterprise.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#androidDevicePolicyConfig\".", + "default": "androidenterprise#androidDevicePolicyConfig" + }, + "state": { + "type": "string", + "description": "The state of Android Device Policy. \"enabled\" indicates that Android Device Policy is enabled for the enterprise and the EMM is allowed to manage devices with Android Device Policy, while \"disabled\" means that it cannot." + } + } + }, "AppRestrictionsSchema": { "id": "AppRestrictionsSchema", "type": "object", @@ -1722,6 +1738,29 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "getAndroidDevicePolicyConfig": { + "id": "androidenterprise.enterprises.getAndroidDevicePolicyConfig", + "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", + "httpMethod": "GET", + "description": "Returns the Android Device Policy config resource.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "response": { + "$ref": "AndroidDevicePolicyConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "getServiceAccount": { "id": "androidenterprise.enterprises.getServiceAccount", "path": "enterprises/{enterpriseId}/serviceAccount", @@ -1906,6 +1945,32 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "setAndroidDevicePolicyConfig": { + "id": "androidenterprise.enterprises.setAndroidDevicePolicyConfig", + "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig", + "httpMethod": "PUT", + "description": "Sets the Android Device Policy config resource. EMM may use this API to enable or disable Android Device Policy support for the specified enterprise.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "request": { + "$ref": "AndroidDevicePolicyConfig" + }, + "response": { + "$ref": "AndroidDevicePolicyConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "setStoreLayout": { "id": "androidenterprise.enterprises.setStoreLayout", "path": "enterprises/{enterpriseId}/storeLayout", diff --git a/DiscoveryJson/appengine_v1.json b/DiscoveryJson/appengine_v1.json index f3e890a8cc..fabfd671d4 100644 --- a/DiscoveryJson/appengine_v1.json +++ b/DiscoveryJson/appengine_v1.json @@ -1,157 +1,24 @@ { - "version": "v1", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", - "kind": "discovery#restDescription", - "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", "batchPath": "batch", - "id": "appengine:v1", "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20170626", + "id": "appengine:v1", + "revision": "20170630", "title": "Google App Engine Admin API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "version_module": "True", "resources": { "apps": { - "methods": { - "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.", - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string", - "location": "query" - }, - "appsId": { - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}", - "path": "v1/apps/{appsId}", - "id": "appengine.apps.patch" - }, - "get": { - "response": { - "$ref": "Application" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", - "type": "string", - "required": true - } - }, - "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}", - "id": "appengine.apps.get", - "path": "v1/apps/{appsId}", - "description": "Gets information about an application." - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/apps", - "id": "appengine.apps.create", - "path": "v1/apps", - "request": { - "$ref": "Application" - }, - "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/)." - }, - "repair": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}:repair", - "id": "appengine.apps.repair", - "path": "v1/apps/{appsId}: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" - } - } - }, "resources": { - "locations": { + "operations": { "methods": { "get": { - "id": "appengine.apps.locations.get", - "path": "v1/apps/{appsId}/locations/{locationsId}", - "description": "Get information about a location.", "response": { - "$ref": "Location" + "$ref": "Operation" }, "parameterOrder": [ "appsId", - "locationsId" + "operationsId" ], "httpMethod": "GET", "scopes": [ @@ -161,29 +28,31 @@ ], "parameters": { "appsId": { - "description": "Part of `name`. Resource name for the location.", + "location": "path", + "description": "Part of `name`. The name of the operation resource.", "type": "string", - "required": true, - "location": "path" + "required": true }, - "locationsId": { + "operationsId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true } }, - "flatPath": "v1/apps/{appsId}/locations/{locationsId}" + "flatPath": "v1/apps/{appsId}/operations/{operationsId}", + "id": "appengine.apps.operations.get", + "path": "v1/apps/{appsId}/operations/{operationsId}", + "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." }, "list": { - "description": "Lists information about the supported locations for this service.", "httpMethod": "GET", + "response": { + "$ref": "ListOperationsResponse" + }, "parameterOrder": [ "appsId" ], - "response": { - "$ref": "ListLocationsResponse" - }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", @@ -201,7 +70,7 @@ "location": "query" }, "appsId": { - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "description": "Part of `name`. The name of the operation's parent resource.", "type": "string", "required": true, "location": "path" @@ -213,46 +82,274 @@ "type": "integer" } }, + "flatPath": "v1/apps/{appsId}/operations", + "path": "v1/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." + } + } + }, + "locations": { + "methods": { + "get": { + "id": "appengine.apps.locations.get", + "path": "v1/apps/{appsId}/locations/{locationsId}", + "description": "Get information about a location.", + "response": { + "$ref": "Location" + }, + "parameterOrder": [ + "appsId", + "locationsId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "locationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Resource name for the location.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/apps/{appsId}/locations/{locationsId}" + }, + "list": { + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "appsId": { + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "type": "string", + "required": true, + "location": "path" + }, + "pageSize": { + "format": "int32", + "description": "The standard list page size.", + "type": "integer", + "location": "query" + }, + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "flatPath": "v1/apps/{appsId}/locations", + "id": "appengine.apps.locations.list", "path": "v1/apps/{appsId}/locations", - "id": "appengine.apps.locations.list" + "description": "Lists information about the supported locations for this service." } } }, "services": { - "resources": { - "versions": { - "methods": { - "patch": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string" - }, - "servicesId": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "type": "string", + "required": true + } + }, + "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." + }, + "patch": { + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch", + "path": "v1/apps/{appsId}/services/{servicesId}", + "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": { + "updateMask": { + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string", + "location": "query" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "type": "string", + "required": true + }, + "migrateTraffic": { + "description": "Set to true to gradually shift traffic to one or more versions that you specify. By default, traffic is shifted immediately. For gradual traffic migration, the target versions must be located within instances that are configured for both warmup requests (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#inboundservicetype) and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#automaticscaling). You must specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see Migrating and Splitting Traffic (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "type": "boolean", + "location": "query" + } + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "path": "v1/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.get", + "description": "Gets the current configuration of the specified service." + }, + "list": { + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListServicesResponse" + }, + "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", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" + }, + "pageToken": { + "location": "query", + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/apps/{appsId}/services", + "id": "appengine.apps.services.list", + "path": "v1/apps/{appsId}/services", + "description": "Lists all the services in the application." + } + }, + "resources": { + "versions": { + "methods": { + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", "type": "string", "required": true }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" }, - "versionsId": { + "updateMask": { + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string", + "location": "query" + }, + "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, @@ -263,33 +360,38 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.patch", "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.", "request": { "$ref": "Version" } }, "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", "servicesId", "versionsId" ], - "response": { - "$ref": "Version" - }, + "httpMethod": "GET", "parameters": { - "view": { - "description": "Controls the set of fields returned in the Get response.", + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "type": "string", + "required": true + }, + "view": { "location": "query", "enum": [ "BASIC", "FULL" - ] + ], + "description": "Controls the set of fields returned in the Get response.", + "type": "string" }, "versionsId": { "location": "path", @@ -298,14 +400,8 @@ "required": true }, "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true } @@ -316,8 +412,9 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.get", "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "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." }, "list": { "description": "Lists the versions of a service.", @@ -329,57 +426,54 @@ "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": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Controls the set of fields returned in the List response.", - "type": "string" - }, "servicesId": { + "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "location": "path", "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", "type": "string", "required": true + }, + "pageSize": { + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer", + "location": "query" + }, + "view": { + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Controls the set of fields returned in the List response.", + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", "id": "appengine.apps.services.versions.list", "path": "v1/apps/{appsId}/services/{servicesId}/versions" }, "create": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "path": "v1/apps/{appsId}/services/{servicesId}/versions", - "description": "Deploys code and resource files to a new version.", "request": { "$ref": "Version" }, + "description": "Deploys code and resource files to a new version.", "response": { "$ref": "Operation" }, @@ -388,12 +482,15 @@ "servicesId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "servicesId": { - "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "appsId": { "location": "path", @@ -402,11 +499,14 @@ "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", + "id": "appengine.apps.services.versions.create", + "path": "v1/apps/{appsId}/services/{servicesId}/versions" }, "delete": { + "id": "appengine.apps.services.versions.delete", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "description": "Deletes an existing Version resource.", "response": { "$ref": "Operation" }, @@ -430,29 +530,25 @@ "location": "path" }, "versionsId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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." + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}" } }, "resources": { "instances": { "methods": { - "delete": { - "description": "Stops a running instance.", - "httpMethod": "DELETE", + "get": { + "description": "Gets instance information.", "response": { - "$ref": "Operation" + "$ref": "Instance" }, "parameterOrder": [ "appsId", @@ -460,16 +556,8 @@ "versionsId", "instancesId" ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "GET", "parameters": { - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, "servicesId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", @@ -477,100 +565,45 @@ "required": true }, "instancesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "appsId": { "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", "type": "string", "required": true - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.delete" - }, - "get": { - "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", - "description": "Gets instance information.", - "httpMethod": "GET", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "parameters": { - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" }, - "instancesId": { + "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "type": "string", - "required": true } }, "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}" }, "list": { - "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).", - "httpMethod": "GET", + "response": { + "$ref": "ListInstancesResponse" + }, "parameterOrder": [ "appsId", "servicesId", "versionsId" ], - "response": { - "$ref": "ListInstancesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], + "httpMethod": "GET", "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer" - }, - "versionsId": { - "location": "path", - "description": "Part of `parent`. See documentation of `appsId`.", - "type": "string", - "required": true - }, "servicesId": { "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", @@ -578,18 +611,37 @@ "required": true }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { + "location": "path", "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", "type": "string", + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" + }, + "versionsId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "type": "string", "required": true, "location": "path" } }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances" + "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", + "id": "appengine.apps.services.versions.instances.list", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances" }, "debug": { "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", @@ -612,270 +664,215 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "instancesId": { + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "servicesId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true }, - "appsId": { - "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`.", "type": "string", "required": true, "location": "path" }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug" + }, + "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": { "versionsId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "instancesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "type": "string", + "required": true, + "location": "path" } }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug" + "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}" } } } } } + } + } + }, + "methods": { + "create": { + "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/python/console/).", + "request": { + "$ref": "Application" }, - "methods": { - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "DELETE", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete", - "path": "v1/apps/{appsId}/services/{servicesId}", - "description": "Deletes the specified service and all enclosed versions." - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", - "type": "string", - "required": true - }, - "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" - } - }, - "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." - }, - "get": { - "description": "Gets the current configuration of the specified service.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "Service" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}", - "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get" - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "ListServicesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageSize": { - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/apps/{appsId}/services", - "path": "v1/apps/{appsId}/services", - "id": "appengine.apps.services.list", - "description": "Lists all the services in the application." + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "repair": { + "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", + "type": "string", + "required": true } - } + }, + "flatPath": "v1/apps/{appsId}:repair", + "id": "appengine.apps.repair", + "path": "v1/apps/{appsId}: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." }, - "operations": { - "methods": { - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "operationsId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "operationsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation resource.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get", - "path": "v1/apps/{appsId}/operations/{operationsId}", - "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." + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "type": "string", + "required": true, + "location": "path" }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "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": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "appsId": { - "description": "Part of `name`. The name of the operation's parent resource.", - "type": "string", - "required": true, - "location": "path" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" - } - }, - "flatPath": "v1/apps/{appsId}/operations", - "path": "v1/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." + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string" } + }, + "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" } + }, + "get": { + "description": "Gets information about an application.", + "response": { + "$ref": "Application" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", + "type": "string", + "required": true + } + }, + "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}", + "id": "appengine.apps.get", + "path": "v1/apps/{appsId}" } } } }, "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.", + "default": "true", + "type": "boolean", + "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", @@ -916,9 +913,9 @@ "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" + "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.", @@ -937,626 +934,780 @@ "location": "query" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "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" } }, "schemas": { - "AutomaticScaling": { + "OperationMetadataV1": { "properties": { - "minPendingLatency": { - "format": "google-duration", - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "maxIdleInstances": { - "format": "int32", - "description": "Maximum number of idle instances that should be maintained for this version.", - "type": "integer" - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." - }, - "minIdleInstances": { - "format": "int32", - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", - "type": "integer" - }, - "maxTotalInstances": { - "format": "int32", - "description": "Maximum number of instances that should be started to handle requests.", - "type": "integer" - }, - "minTotalInstances": { - "format": "int32", - "description": "Minimum number of instances that should be maintained for this version.", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" }, - "maxConcurrentRequests": { - "format": "int32", - "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", - "type": "integer" + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" }, - "coolDownPeriod": { - "format": "google-duration", - "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.", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "maxPendingLatency": { - "format": "google-duration", - "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", "type": "string" }, - "cpuUtilization": { - "description": "Target scaling by CPU usage.", - "$ref": "CpuUtilization" + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "diskUtilization": { - "description": "Target scaling by disk usage.", - "$ref": "DiskUtilization" + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" } }, - "id": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "id": "OperationMetadataV1", + "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "ZipInfo": { - "description": "The zip file information for a zip deployment.", + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", "type": "object", "properties": { - "filesCount": { - "format": "int32", - "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.", - "type": "integer" + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" }, - "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'.", + "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" + }, + "staticFile": { + "description": "Static file content to be served for this error.", "type": "string" } }, - "id": "ZipInfo" + "id": "ErrorHandler" }, - "Library": { + "Application": { "properties": { + "gcrDomain": { + "description": "The Google Container Registry domain used for storing managed build docker images for this application.", + "type": "string" + }, "name": { - "description": "Name of the library. Example: \"django\".", + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", "type": "string" }, - "version": { - "description": "Version of the library to select, or \"latest\".", + "defaultCookieExpiration": { + "format": "google-duration", + "description": "Cookie expiration policy for this application.", + "type": "string" + }, + "id": { + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", + "type": "string" + }, + "locationId": { + "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", + "type": "string" + }, + "servingStatus": { + "description": "Serving status of this application.", + "type": "string", + "enumDescriptions": [ + "Serving status is unspecified.", + "Application is serving.", + "Application has been disabled by the user.", + "Application has been disabled by the system." + ], + "enum": [ + "UNSPECIFIED", + "SERVING", + "USER_DISABLED", + "SYSTEM_DISABLED" + ] + }, + "defaultHostname": { + "description": "Hostname used to reach this application, as resolved by App Engine.@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" + }, + "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", + "items": { + "$ref": "UrlDispatchRule" + }, + "type": "array" } }, - "id": "Library", - "description": "Third-party Python runtime library that is required by the application.", + "id": "Application", + "description": "An Application resource contains the top-level configuration of an App Engine application. Next tag: 19", "type": "object" }, - "ListLocationsResponse": { + "Network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "type": "object", "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", + "type": "string" + }, + "instanceTag": { + "description": "Tag to apply to the VM instance during creation.", + "type": "string" + }, + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", "items": { - "$ref": "Location" + "type": "string" }, "type": "array" }, - "nextPageToken": { - "description": "The standard List next-page token.", + "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": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" + "id": "Network" }, - "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.", + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", "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\"", + "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": "ContainerInfo" - }, - "RequestUtilization": { - "properties": { - "targetRequestCountPerSecond": { - "format": "int32", - "description": "Target requests per second.", - "type": "integer" }, - "targetConcurrentRequests": { + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "averageLatency": { "format": "int32", - "description": "Target number of concurrent requests.", + "description": "Average latency (ms) over the last minute.@OutputOnly", "type": "integer" - } - }, - "id": "RequestUtilization", - "description": "Target scaling by request utilization. Only applicable for VM runtimes.", - "type": "object" - }, - "UrlMap": { - "properties": { - "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": { - "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.", + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "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.", + "memoryUsage": { + "format": "int64", + "description": "Total memory in use (bytes).@OutputOnly", "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" - ] + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" }, - "apiEndpoint": { - "$ref": "ApiEndpointHandler", - "description": "Uses API Endpoints to handle requests." + "errors": { + "format": "int32", + "description": "Number of errors since this instance was started.@OutputOnly", + "type": "integer" }, - "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" }, - "redirectHttpResponseCode": { + "availability": { "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" + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" ], - "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", + "description": "Availability of the instance.@OutputOnly", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Time that this instance was started.@OutputOnly", + "type": "string" + }, + "vmDebugEnabled": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" + }, + "requests": { + "format": "int32", + "description": "Number of requests since this instance was started.@OutputOnly", + "type": "integer" + }, + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" + }, + "qps": { + "format": "float", + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "type": "number" } }, - "id": "UrlMap", - "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", - "type": "object" + "id": "Instance" }, - "EndpointsApiService": { - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", + "LivenessCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", "type": "object", "properties": { - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", + "path": { + "description": "The request path.", "type": "string" }, - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "host": { + "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", + "type": "string" + }, + "successThreshold": { + "format": "uint32", + "description": "Number of consecutive successful checks required before considering the VM healthy.", + "type": "integer" + }, + "checkInterval": { + "format": "google-duration", + "description": "Interval between health checks.", + "type": "string" + }, + "timeout": { + "format": "google-duration", + "description": "Time before the check is considered failed.", + "type": "string" + }, + "failureThreshold": { + "format": "uint32", + "description": "Number of consecutive failed checks required before considering the VM unhealthy.", + "type": "integer" + }, + "initialDelay": { + "format": "google-duration", + "description": "The initial delay before starting to execute the checks.", "type": "string" } }, - "id": "EndpointsApiService" + "id": "LivenessCheck" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", + "Location": { + "description": "A resource that represents Google Cloud Platform location.", "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", + "labels": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "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.", + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", "type": "string" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", + "type": "string" }, "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" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" } }, - "id": "Operation" + "id": "Location" }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable for VM runtimes.", "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" + "targetReceivedPacketsPerSecond": { + "format": "int32", + "description": "Target packets received per second.", + "type": "integer" }, - "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" - ] + "targetSentBytesPerSecond": { + "format": "int32", + "description": "Target bytes sent per second.", + "type": "integer" }, - "script": { - "description": "Path to the script from the application root directory.", + "targetReceivedBytesPerSecond": { + "format": "int32", + "description": "Target bytes received per second.", + "type": "integer" + }, + "targetSentPacketsPerSecond": { + "format": "int32", + "description": "Target packets sent per second.", + "type": "integer" + } + }, + "id": "NetworkUtilization" + }, + "HealthCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", + "type": "object", + "properties": { + "timeout": { + "format": "google-duration", + "description": "Time before the health check is considered failed.", "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" + "unhealthyThreshold": { + "format": "uint32", + "description": "Number of consecutive failed health checks required before removing traffic.", + "type": "integer" }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - } - }, - "id": "ApiConfigHandler" - }, - "StaticFilesHandler": { - "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", - "type": "object", - "properties": { - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", - "type": "string" + "disableHealthCheck": { + "description": "Whether to explicitly disable health checks for this instance.", + "type": "boolean" }, - "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.", + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", "type": "string" }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler.Defaults to file-specific MIME types, which are derived from each file's filename extension.", - "type": "string" + "restartThreshold": { + "format": "uint32", + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "type": "integer" }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" + "healthyThreshold": { + "format": "uint32", + "description": "Number of consecutive successful health checks required before receiving traffic.", + "type": "integer" }, - "expiration": { + "checkInterval": { "format": "google-duration", - "description": "Time a static file served by this handler should be cached by web proxies and browsers.", + "description": "Interval between health checks.", "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 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" } }, - "id": "StaticFilesHandler" + "id": "HealthCheck" }, - "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.", + "ReadinessCheck": { + "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", "type": "object", "properties": { - "idleTimeout": { + "checkInterval": { "format": "google-duration", - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "description": "Interval between health checks.", "type": "string" }, - "maxInstances": { - "format": "int32", - "description": "Maximum number of instances to create for this version.", - "type": "integer" - } - }, - "id": "BasicScaling" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "targetReadOpsPerSecond": { - "format": "int32", - "description": "Target ops read per seconds.", - "type": "integer" + "timeout": { + "format": "google-duration", + "description": "Time before the check is considered failed.", + "type": "string" }, - "targetReadBytesPerSecond": { - "format": "int32", - "description": "Target bytes read per second.", + "failureThreshold": { + "format": "uint32", + "description": "Number of consecutive failed checks required before removing traffic.", "type": "integer" }, - "targetWriteOpsPerSecond": { - "format": "int32", - "description": "Target ops written per second.", - "type": "integer" + "path": { + "description": "The request path.", + "type": "string" }, - "targetWriteBytesPerSecond": { - "format": "int32", - "description": "Target bytes written per second.", - "type": "integer" - } - }, - "id": "DiskUtilization" - }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", - "properties": { - "aggregationWindowLength": { - "format": "google-duration", - "description": "Period of time over which CPU utilization is calculated.", + "host": { + "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", "type": "string" }, - "targetUtilization": { - "format": "double", - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "type": "number" + "successThreshold": { + "format": "uint32", + "description": "Number of consecutive successful checks required before receiving traffic.", + "type": "integer" } }, - "id": "CpuUtilization" + "id": "ReadinessCheck" }, - "Status": { + "DebugInstanceRequest": { "properties": { - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "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" - }, - "details": { - "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" } }, - "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.", + "id": "DebugInstanceRequest", + "description": "Request message for Instances.DebugInstance.", "type": "object" }, - "IdentityAwareProxy": { + "OperationMetadataV1Beta5": { "properties": { - "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", + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", "type": "string" }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", "type": "string" }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "endTime": { + "format": "google-datetime", + "description": "Timestamp that this operation completed.@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" + "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" } }, - "id": "IdentityAwareProxy", - "description": "Identity-Aware Proxy", + "id": "OperationMetadataV1Beta5", + "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "ManualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object", - "properties": { - "instances": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "ManualScaling" - }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object", + "Version": { "properties": { - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" + "servingStatus": { + "description": "Current serving status of this version. Only the versions with a SERVING status create instances and can be billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "Currently serving. Instances are created according to the scaling settings of the version.", + "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." + ], + "enum": [ + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ] }, - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata" - }, - "Service": { - "properties": { - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", + "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" }, - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", - "$ref": "TrafficSplit" + "deployment": { + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", + "$ref": "Deployment" }, - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", - "type": "string" - } - }, - "id": "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" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + "createTime": { + "format": "google-datetime", + "description": "Time that this version was created.@OutputOnly", "type": "string" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "inboundServices": { + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", "items": { - "$ref": "Operation" + "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" + }, + "type": "array", + "enumDescriptions": [ + "Not specified.", + "Allows an application to receive mail.", + "Allows an application to receive email-bound notifications.", + "Allows an application to receive error stanzas.", + "Allows an application to receive instant messages.", + "Allows an application to receive user subscription POSTs.", + "Allows an application to receive a user's chat presence.", + "Registers an application for notifications when a client connects or disconnects from a channel.", + "Enables warmup requests." + ] + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." + }, + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" + }, + "defaultExpiration": { + "format": "google-duration", + "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.", + "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.", + "items": { + "$ref": "Library" + }, + "type": "array" + }, + "nobuildFilesRegex": { + "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", + "type": "string" + }, + "basicScaling": { + "$ref": "BasicScaling", + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + }, + "runtime": { + "description": "Desired runtime. Example: python27.", + "type": "string" + }, + "id": { + "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", + "type": "string" + }, + "createdBy": { + "description": "Email address of the user who created this version.@OutputOnly", + "type": "string" + }, + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", + "type": "object" + }, + "livenessCheck": { + "$ref": "LivenessCheck", + "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set." + }, + "network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "$ref": "Network" + }, + "betaSettings": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "type": "object" + }, + "env": { + "description": "App Engine execution environment for this version.Defaults to standard.", + "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.", + "items": { + "$ref": "UrlMap" }, "type": "array" + }, + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "diskUsageBytes": { + "format": "int64", + "description": "Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk.@OutputOnly", + "type": "string" + }, + "healthCheck": { + "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.", + "$ref": "HealthCheck" + }, + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "readinessCheck": { + "$ref": "ReadinessCheck", + "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set." + }, + "manualScaling": { + "$ref": "ManualScaling", + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "type": "string" + }, + "apiConfig": { + "$ref": "ApiConfigHandler", + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." + }, + "endpointsApiService": { + "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" + }, + "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": "ListOperationsResponse" + "id": "Version", + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", + "type": "object" }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", + "RepairApplicationRequest": { + "properties": {}, + "id": "RepairApplicationRequest", + "description": "Request message for 'Applications.RepairApplication'.", + "type": "object" + }, + "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": { - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@OutputOnly", + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", "type": "string" }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "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" + }, + "OperationMetadataExperimental": { + "properties": { "insertTime": { "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", + "description": "Time that this operation was created.@OutputOnly", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", "type": "string" }, "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", "type": "string" } }, - "id": "OperationMetadata" + "id": "OperationMetadataExperimental", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, - "OperationMetadataV1": { + "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": { + "allocations": { + "additionalProperties": { + "format": "double", + "type": "number" + }, + "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", + "type": "object" + }, + "shardBy": { + "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", + "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." + ] + } + }, + "id": "TrafficSplit" + }, + "OperationMetadataV1Beta": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" + }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" @@ -1570,980 +1721,829 @@ "type": "string" }, "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { "format": "google-datetime", "description": "Time that this operation completed.@OutputOnly", "type": "string" + } + }, + "id": "OperationMetadataV1Beta" + }, + "ListServicesResponse": { + "description": "Response message for Services.ListServices.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", + "services": { + "description": "The services belonging to the requested application.", "items": { - "type": "string" + "$ref": "Service" }, "type": "array" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" } }, - "id": "OperationMetadataV1" + "id": "ListServicesResponse" }, - "ErrorHandler": { + "Resources": { + "description": "Machine resources for a version.", + "type": "object", "properties": { - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" + "memoryGb": { + "format": "double", + "description": "Memory (GB) needed.", + "type": "number" }, - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] + "cpu": { + "format": "double", + "description": "Number of CPU cores needed.", + "type": "number" }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" + "volumes": { + "description": "User specified volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + }, + "diskGb": { + "format": "double", + "description": "Disk size (GB) needed.", + "type": "number" } }, - "id": "ErrorHandler", - "description": "Custom static error page to be served when an error occurs.", - "type": "object" + "id": "Resources" }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application. Next tag: 19", + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", "type": "object", "properties": { - "gcrDomain": { - "description": "The Google Container Registry domain used for storing managed build docker images for this application.", - "type": "string" + "zip": { + "$ref": "ZipInfo", + "description": "The zip file for this deployment, if this is a zip deployment." }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" + "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" }, - "defaultCookieExpiration": { - "format": "google-duration", - "description": "Cookie expiration policy for this application.", + "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": { + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "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" + "sizeGb": { + "format": "double", + "description": "Volume size in gigabytes.", + "type": "number" }, - "locationId": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", + "name": { + "description": "Unique name for the volume.", "type": "string" + } + }, + "id": "Volume" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "type": "object", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" }, - "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.", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" - }, - "defaultHostname": { - "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", + } + }, + "id": "ListInstancesResponse" + }, + "OperationMetadataV1Alpha": { + "properties": { + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "iap": { - "$ref": "IdentityAwareProxy" + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @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", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "defaultBucket": { - "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@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", + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", "items": { - "$ref": "UrlDispatchRule" + "type": "string" }, "type": "array" + }, + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" } }, - "id": "Application" + "id": "OperationMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, - "Network": { - "description": "Extra network settings. Only applicable for VM runtimes.", + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", "type": "object", "properties": { - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", + "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" }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation.", + "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" }, - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", + "type": "string" + } + }, + "id": "UrlDispatchRule" + }, + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested service.", "items": { - "type": "string" + "$ref": "Version" }, "type": "array" - }, - "name": { - "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + } + }, + "id": "ListVersionsResponse" + }, + "ApiEndpointHandler": { + "properties": { + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "Network" + "id": "ApiEndpointHandler", + "description": "Uses Google Cloud Endpoints to handle requests.", + "type": "object" }, - "Instance": { - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object", + "AutomaticScaling": { "properties": { - "errors": { + "diskUtilization": { + "description": "Target scaling by disk usage.", + "$ref": "DiskUtilization" + }, + "minPendingLatency": { + "format": "google-duration", + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "type": "string" + }, + "maxIdleInstances": { "format": "int32", - "description": "Number of errors since this instance was started.@OutputOnly", + "description": "Maximum number of idle instances that should be maintained for this version.", "type": "integer" }, - "availability": { - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ], - "description": "Availability of the instance.@OutputOnly", - "type": "string", - "enumDescriptions": [ - "", - "", - "" - ] + "requestUtilization": { + "description": "Target scaling by request utilization.", + "$ref": "RequestUtilization" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "Time that this instance was started.@OutputOnly", - "type": "string" - }, - "vmDebugEnabled": { - "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "boolean" - }, - "requests": { + "minIdleInstances": { "format": "int32", - "description": "Number of requests since this instance was started.@OutputOnly", + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", "type": "integer" }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" - }, - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "qps": { - "format": "float", - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "type": "number" - }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "maxTotalInstances": { + "format": "int32", + "description": "Maximum number of instances that should be started to handle requests.", + "type": "integer" }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", - "type": "string" + "minTotalInstances": { + "format": "int32", + "description": "Minimum number of instances that should be maintained for this version.", + "type": "integer" }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "networkUtilization": { + "description": "Target scaling by network usage.", + "$ref": "NetworkUtilization" }, - "averageLatency": { + "maxConcurrentRequests": { "format": "int32", - "description": "Average latency (ms) over the last minute.@OutputOnly", + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", "type": "integer" }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "coolDownPeriod": { + "format": "google-duration", + "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.", "type": "string" }, - "memoryUsage": { - "format": "int64", - "description": "Total memory in use (bytes).@OutputOnly", + "maxPendingLatency": { + "format": "google-duration", + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", "type": "string" }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." } }, - "id": "Instance" + "id": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "type": "object" }, - "LivenessCheck": { - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", + "ZipInfo": { + "description": "The zip file information for a zip deployment.", "type": "object", "properties": { - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", - "type": "string" - }, - "timeout": { - "format": "google-duration", - "description": "Time before the check is considered failed.", + "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" }, - "failureThreshold": { - "format": "uint32", - "description": "Number of consecutive failed checks required before considering the VM unhealthy.", + "filesCount": { + "format": "int32", + "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.", "type": "integer" - }, - "initialDelay": { - "format": "google-duration", - "description": "The initial delay before starting to execute the checks.", - "type": "string" - }, - "path": { - "description": "The request path.", + } + }, + "id": "ZipInfo" + }, + "Library": { + "properties": { + "version": { + "description": "Version of the library to select, or \"latest\".", "type": "string" }, - "host": { - "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", + "name": { + "description": "Name of the library. Example: \"django\".", "type": "string" - }, - "successThreshold": { - "format": "uint32", - "description": "Number of consecutive successful checks required before considering the VM healthy.", - "type": "integer" } }, - "id": "LivenessCheck" + "id": "Library", + "description": "Third-party Python runtime library that is required by the application.", + "type": "object" }, - "NetworkUtilization": { - "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", "type": "object", "properties": { - "targetSentBytesPerSecond": { - "format": "int32", - "description": "Target bytes sent per second.", - "type": "integer" - }, - "targetReceivedBytesPerSecond": { - "format": "int32", - "description": "Target bytes received per second.", - "type": "integer" - }, - "targetSentPacketsPerSecond": { - "format": "int32", - "description": "Target packets sent per second.", - "type": "integer" + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" }, - "targetReceivedPacketsPerSecond": { - "format": "int32", - "description": "Target packets received per second.", - "type": "integer" + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" } }, - "id": "NetworkUtilization" + "id": "ListLocationsResponse" }, - "Location": { + "ContainerInfo": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" - }, - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", + "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" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given location.", - "type": "object" } }, - "id": "Location", - "description": "A resource that represents Google Cloud Platform location.", + "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" }, - "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.", + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", "type": "object", "properties": { - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", - "type": "string" - }, - "timeout": { - "format": "google-duration", - "description": "Time before the health check is considered failed.", - "type": "string" - }, - "unhealthyThreshold": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before removing traffic.", - "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": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before an instance is restarted.", + "targetRequestCountPerSecond": { + "format": "int32", + "description": "Target requests per second.", "type": "integer" }, - "healthyThreshold": { - "format": "uint32", - "description": "Number of consecutive successful health checks required before receiving traffic.", + "targetConcurrentRequests": { + "format": "int32", + "description": "Target number of concurrent requests.", "type": "integer" } }, - "id": "HealthCheck" + "id": "RequestUtilization" }, - "ReadinessCheck": { - "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", "type": "object", "properties": { - "failureThreshold": { - "format": "uint32", - "description": "Number of consecutive failed checks required before removing traffic.", - "type": "integer" - }, - "timeout": { - "format": "google-duration", - "description": "Time before the check is considered failed.", - "type": "string" - }, - "path": { - "description": "The request path.", - "type": "string" - }, - "host": { - "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", "type": "string" }, - "successThreshold": { - "format": "uint32", - "description": "Number of consecutive successful checks required before receiving traffic.", - "type": "integer" - }, - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", + "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" } }, - "id": "ReadinessCheck" + "id": "EndpointsApiService" }, - "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" - }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", + "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": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "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" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "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" }, - "insertTime": { - "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", + "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" }, - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@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.", "type": "string" + }, + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." } }, - "id": "OperationMetadataV1Beta5" + "id": "UrlMap" }, - "Version": { - "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object", + "ApiConfigHandler": { "properties": { - "createdBy": { - "description": "Email address of the user who created this version.@OutputOnly", - "type": "string" - }, - "id": { - "description": "Relative name of the version within the service. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", - "type": "string" - }, - "envVariables": { - "additionalProperties": { - "type": "string" - }, - "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object" - }, - "livenessCheck": { - "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", - "$ref": "LivenessCheck" - }, - "network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "$ref": "Network" - }, - "betaSettings": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata settings that are supplied to this version to enable beta runtime features.", - "type": "object" - }, - "env": { - "description": "App Engine execution environment for this version.Defaults to standard.", - "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.", - "items": { - "$ref": "UrlMap" - }, - "type": "array" - }, - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." - }, - "diskUsageBytes": { - "format": "int64", - "description": "Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk.@OutputOnly", - "type": "string" - }, - "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." - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "readinessCheck": { - "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set.", - "$ref": "ReadinessCheck" - }, - "manualScaling": { - "$ref": "ManualScaling", - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", - "type": "string" - }, - "apiConfig": { - "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": { - "$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." - }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@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" }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", + "url": { + "description": "URL to serve the endpoint at.", "type": "string" }, - "servingStatus": { + "securityLevel": { "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." + "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": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" ], - "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": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." - }, - "createTime": { - "format": "google-datetime", - "description": "Time that this version was created.@OutputOnly", + "description": "Security (HTTPS) enforcement for this URL.", "type": "string" }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable for VM runtimes." - }, - "inboundServices": { - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "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" - }, - "type": "array", + "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.", - "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." + "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." ] }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "items": { - "$ref": "ErrorHandler" - }, - "type": "array" - }, - "defaultExpiration": { - "format": "google-duration", - "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.", - "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.", - "items": { - "$ref": "Library" - }, - "type": "array" - }, - "nobuildFilesRegex": { - "description": "Files that match this pattern will not be built into this version. Only applicable for Go runtimes.Only returned in GET requests if view=FULL is set.", - "type": "string" - }, - "basicScaling": { - "$ref": "BasicScaling", - "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." - }, - "runtime": { - "description": "Desired runtime. Example: python27.", - "type": "string" - } - }, - "id": "Version" - }, - "RepairApplicationRequest": { - "properties": {}, - "id": "RepairApplicationRequest", - "description": "Request message for 'Applications.RepairApplication'.", - "type": "object" - }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object", - "properties": { - "scriptPath": { + "script": { "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "ScriptHandler" + "id": "ApiConfigHandler", + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "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.", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", "type": "object", "properties": { - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", - "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" }, - "mimeType": { - "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", - "type": "string" + "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" + } }, - "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'.", + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", "type": "string" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" } }, - "id": "FileInfo" + "id": "Operation" }, - "OperationMetadataExperimental": { - "description": "Metadata for the given google.longrunning.Operation.", + "StaticFilesHandler": { + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", "type": "object", "properties": { - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "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" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", - "type": "string" + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", + "expiration": { + "format": "google-duration", + "description": "Time a static file served by this handler should be cached by web proxies and browsers.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + }, + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", "type": "string" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "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" } }, - "id": "OperationMetadataExperimental" + "id": "StaticFilesHandler" }, - "TrafficSplit": { + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "type": "object", "properties": { - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" + "targetWriteOpsPerSecond": { + "format": "int32", + "description": "Target ops written per second.", + "type": "integer" }, - "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" + "targetWriteBytesPerSecond": { + "format": "int32", + "description": "Target bytes written per second.", + "type": "integer" + }, + "targetReadOpsPerSecond": { + "format": "int32", + "description": "Target ops read per seconds.", + "type": "integer" + }, + "targetReadBytesPerSecond": { + "format": "int32", + "description": "Target bytes read per second.", + "type": "integer" } }, - "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" + "id": "DiskUtilization" }, - "OperationMetadataV1Beta": { + "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": { - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" + "maxInstances": { + "format": "int32", + "description": "Maximum number of instances to create for this version.", + "type": "integer" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "idleTimeout": { + "format": "google-duration", + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + } + }, + "id": "BasicScaling" + }, + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "type": "object", + "properties": { + "aggregationWindowLength": { + "format": "google-duration", + "description": "Period of time over which CPU utilization is calculated.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" + "targetUtilization": { + "format": "double", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "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" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "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" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", "type": "string" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", "type": "string" } }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", + "id": "IdentityAwareProxy", + "description": "Identity-Aware Proxy", "type": "object" }, - "ListServicesResponse": { - "description": "Response message for Services.ListServices.", - "type": "object", + "Status": { "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "services": { - "description": "The services belonging to the requested application.", + "details": { + "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", "items": { - "$ref": "Service" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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": "ListServicesResponse" + "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" }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", + "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": { - "zip": { - "$ref": "ZipInfo", - "description": "The zip file for this deployment, if this is a zip deployment." - }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "files": { - "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" + "instances": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "Deployment" + "id": "ManualScaling" }, - "Resources": { - "description": "Machine resources for a version.", + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", "type": "object", "properties": { - "volumes": { - "description": "User specified volumes.", - "items": { - "$ref": "Volume" - }, - "type": "array" - }, - "diskGb": { - "format": "double", - "description": "Disk size (GB) needed.", - "type": "number" - }, - "memoryGb": { - "format": "double", - "description": "Memory (GB) needed.", - "type": "number" + "flexibleEnvironmentAvailable": { + "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", + "type": "boolean" }, - "cpu": { - "format": "double", - "description": "Number of CPU cores needed.", - "type": "number" + "standardEnvironmentAvailable": { + "description": "App Engine Standard Environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "Resources" + "id": "LocationMetadata" }, - "Volume": { - "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "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": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", + "name": { + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "sizeGb": { - "format": "double", - "description": "Volume size in gigabytes.", - "type": "number" + "split": { + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", + "$ref": "TrafficSplit" }, - "name": { - "description": "Unique name for the volume.", + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", "type": "string" } }, - "id": "Volume" + "id": "Service" }, - "ListInstancesResponse": { + "ListOperationsResponse": { "properties": { "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "description": "The standard List next-page token.", "type": "string" }, - "instances": { - "description": "The instances belonging to the requested version.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "Instance" + "$ref": "Operation" }, "type": "array" } }, - "id": "ListInstancesResponse", - "description": "Response message for Instances.ListInstances.", + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", "type": "object" }, - "OperationMetadataV1Alpha": { + "OperationMetadata": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", + "type": "string" + }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" }, "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "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.v1alpha.Versions.CreateVersion.@OutputOnly", + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "description": "Timestamp that this operation completed.@OutputOnly", "type": "string" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", "type": "string" } }, - "id": "OperationMetadataV1Alpha" - }, - "UrlDispatchRule": { - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object", - "properties": { - "path": { - "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path.The sum of the lengths of the domain and path may not exceed 100 characters.", - "type": "string" - }, - "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": "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" + }, + "version": "v1", + "baseUrl": "https://appengine.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" }, - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - } - }, - "id": "UrlDispatchRule" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "versions": { - "description": "The versions belonging to the requested service.", - "items": { - "$ref": "Version" - }, - "type": "array" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListVersionsResponse" - }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", - "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" } - }, - "id": "ApiEndpointHandler" + } } }, - "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" + "servicePath": "", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "kind": "discovery#restDescription", + "rootUrl": "https://appengine.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "appengine" } diff --git a/DiscoveryJson/appengine_v1alpha.json b/DiscoveryJson/appengine_v1alpha.json index cbaf203fc4..f2e811b2b5 100644 --- a/DiscoveryJson/appengine_v1alpha.json +++ b/DiscoveryJson/appengine_v1alpha.json @@ -1,33 +1,32 @@ { - "id": "appengine:v1alpha", + "ownerDomain": "google.com", + "name": "appengine", + "batchPath": "batch", + "revision": "20170630", "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20170626", + "id": "appengine:v1alpha", "title": "Google App Engine Admin API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "apps": { "resources": { "authorizedDomains": { "methods": { "list": { - "httpMethod": "GET", + "description": "Lists all domains the user is authorized to administer.", "response": { "$ref": "ListAuthorizedDomainsResponse" }, "parameterOrder": [ "appsId" ], - "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": { "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", @@ -36,62 +35,66 @@ "location": "path" }, "pageSize": { + "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" + "type": "integer" } }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "flatPath": "v1alpha/apps/{appsId}/authorizedDomains", - "path": "v1alpha/apps/{appsId}/authorizedDomains", "id": "appengine.apps.authorizedDomains.list", - "description": "Lists all domains the user is authorized to administer." + "path": "v1alpha/apps/{appsId}/authorizedDomains" } } }, "operations": { "methods": { "get": { - "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, "parameterOrder": [ "appsId", "operationsId" ], - "response": { - "$ref": "Operation" - }, + "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.", "type": "string", - "required": true, - "location": "path" + "required": true }, "operationsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "flatPath": "v1alpha/apps/{appsId}/operations/{operationsId}", - "path": "v1alpha/apps/{appsId}/operations/{operationsId}", "id": "appengine.apps.operations.get", + "path": "v1alpha/apps/{appsId}/operations/{operationsId}", "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." }, "list": { - "response": { - "$ref": "ListOperationsResponse" - }, "parameterOrder": [ "appsId" ], "httpMethod": "GET", + "response": { + "$ref": "ListOperationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", @@ -99,14 +102,14 @@ ], "parameters": { "filter": { + "location": "query", "description": "The standard list filter.", - "type": "string", - "location": "query" + "type": "string" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "appsId": { "location": "path", @@ -115,10 +118,10 @@ "required": true }, "pageSize": { - "location": "query", "format": "int32", "description": "The standard list page size.", - "type": "integer" + "type": "integer", + "location": "query" } }, "flatPath": "v1alpha/apps/{appsId}/operations", @@ -131,52 +134,61 @@ "locations": { "methods": { "get": { + "httpMethod": "GET", "response": { "$ref": "Location" }, - "httpMethod": "GET", "parameterOrder": [ "appsId", "locationsId" ], - "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.", - "type": "string", - "required": true - }, "locationsId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Resource name for the location.", + "type": "string", + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get", "path": "v1alpha/apps/{appsId}/locations/{locationsId}", + "id": "appengine.apps.locations.get", "description": "Get information about a location." }, "list": { + "path": "v1alpha/apps/{appsId}/locations", + "id": "appengine.apps.locations.list", + "description": "Lists information about the supported locations for this service.", "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, "parameterOrder": [ "appsId" ], + "response": { + "$ref": "ListLocationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + }, "filter": { "description": "The standard list filter.", "type": "string", @@ -192,24 +204,19 @@ "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "type": "string", "required": true - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" } }, - "flatPath": "v1alpha/apps/{appsId}/locations", - "path": "v1alpha/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "description": "Lists information about the supported locations for this service." + "flatPath": "v1alpha/apps/{appsId}/locations" } } }, "domainMappings": { "methods": { "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" }, @@ -218,6 +225,9 @@ "domainMappingsId" ], "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "domainMappingsId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -226,15 +236,15 @@ "location": "path" }, "noManagedCertificate": { - "location": "query", "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manaually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated. Only applicable if ssl_settings.certificate_id is specified in the update mask.", - "type": "boolean" + "type": "boolean", + "location": "query" }, "updateMask": { + "location": "query", "format": "google-fieldmask", "description": "Standard field mask for the set of fields to be updated.", - "type": "string", - "location": "query" + "type": "string" }, "appsId": { "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", @@ -243,49 +253,42 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", "id": "appengine.apps.domainMappings.patch", - "path": "v1alpha/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" - } + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}" }, "get": { "description": "Gets the specified domain mapping.", - "response": { - "$ref": "DomainMapping" - }, + "httpMethod": "GET", "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" - ], + "response": { + "$ref": "DomainMapping" + }, "parameters": { - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, "appsId": { "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", "type": "string", "required": true + }, + "domainMappingsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}" + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.get" }, "list": { "response": { @@ -295,11 +298,16 @@ "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": { "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "location": "path", @@ -308,23 +316,22 @@ "required": true }, "pageSize": { - "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "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": "v1alpha/apps/{appsId}/domainMappings", "id": "appengine.apps.domainMappings.list", "path": "v1alpha/apps/{appsId}/domainMappings", "description": "Lists the domain mappings on an application." }, "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" }, @@ -333,16 +340,16 @@ ], "httpMethod": "POST", "parameters": { - "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", - "location": "query" - }, "appsId": { + "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", - "required": true, - "location": "path" + "required": true + }, + "noManagedCertificate": { + "location": "query", + "description": "Whether a managed certificate should be provided by App Engine. If true, a certificate ID must be manaually set in the DomainMapping resource to configure SSL for this domain. If false, a managed certificate will be provisioned and a certificate ID will be automatically populated.", + "type": "boolean" } }, "scopes": [ @@ -350,39 +357,35 @@ ], "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" - } + "path": "v1alpha/apps/{appsId}/domainMappings" }, "delete": { "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", - "response": { - "$ref": "Operation" - }, "parameterOrder": [ "appsId", "domainMappingsId" ], + "response": { + "$ref": "Operation" + }, "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, - "domainMappingsId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", "type": "string", "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", "id": "appengine.apps.domainMappings.delete", "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}" @@ -392,6 +395,7 @@ "authorizedCertificates": { "methods": { "delete": { + "description": "Deletes the specified SSL certificate.", "httpMethod": "DELETE", "parameterOrder": [ "appsId", @@ -400,33 +404,28 @@ "response": { "$ref": "Empty" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "type": "string", - "required": true, - "location": "path" - }, "authorizedCertificatesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", + "required": true + }, + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", + "type": "string", "required": true, "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "description": "Deletes the specified SSL certificate." + "id": "appengine.apps.authorizedCertificates.delete" }, "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" }, @@ -437,10 +436,10 @@ "httpMethod": "PATCH", "parameters": { "updateMask": { - "location": "query", "format": "google-fieldmask", "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.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", @@ -449,10 +448,10 @@ "location": "path" }, "authorizedCertificatesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ @@ -460,26 +459,27 @@ ], "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", "id": "appengine.apps.authorizedCertificates.patch", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" + "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" + } }, "get": { - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get", - "description": "Gets the specified SSL certificate.", - "httpMethod": "GET", + "response": { + "$ref": "AuthorizedCertificate" + }, "parameterOrder": [ "appsId", "authorizedCertificatesId" ], - "response": { - "$ref": "AuthorizedCertificate" - }, + "httpMethod": "GET", "parameters": { "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", "type": "string", - "required": true, - "location": "path" + "required": true }, "view": { "location": "query", @@ -502,21 +502,20 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.get", + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "description": "Gets the specified SSL certificate." }, "list": { + "description": "Lists all SSL certificates the user is authorized to administer.", "httpMethod": "GET", - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, "parameterOrder": [ "appsId" ], - "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": "ListAuthorizedCertificatesResponse" + }, "parameters": { "pageToken": { "description": "Continuation token for fetching the next page of results.", @@ -530,16 +529,29 @@ "location": "path" }, "pageSize": { + "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "type": "integer", + "type": "integer" + }, + "view": { + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "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": "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." + "id": "appengine.apps.authorizedCertificates.list" }, "create": { "request": { @@ -558,10 +570,10 @@ ], "parameters": { "appsId": { - "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", @@ -574,65 +586,23 @@ } }, "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.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, "callback": { "location": "query", "description": "JSONP", "type": "string" }, "$.xgafv": { + "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": [ @@ -650,37 +620,173 @@ "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" }, - "access_token": { + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { "location": "query", - "description": "OAuth access token.", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": { - "ListDomainMappingsResponse": { - "description": "Response message for DomainMappings.ListDomainMappings.", + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", "type": "object", "properties": { "nextPageToken": { "description": "Continuation token for fetching the next page of results.", "type": "string" }, - "domainMappings": { - "description": "The domain mappings for the application.", + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", "items": { - "$ref": "DomainMapping" + "$ref": "AuthorizedCertificate" }, "type": "array" } }, - "id": "ListDomainMappingsResponse" + "id": "ListAuthorizedCertificatesResponse" }, - "OperationMetadataV1Alpha": { + "OperationMetadataV1Beta5": { + "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" + }, + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" + }, + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "Timestamp that this operation completed.@OutputOnly", + "type": "string" + } + }, + "id": "OperationMetadataV1Beta5", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" + }, + "ListLocationsResponse": { + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "id": "ListLocationsResponse", + "description": "The response message for Locations.ListLocations.", + "type": "object" + }, + "ManagedCertificate": { + "description": "A certificate managed by App Engine.", + "type": "object", + "properties": { + "lastRenewalTime": { + "format": "google-datetime", + "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", + "type": "string" + }, + "status": { + "enumDescriptions": [ + "", + "Certificate was successfully obtained and inserted into the serving system.", + "Certificate is under active attempts to acquire or renew.", + "Most recent renewal failed due to a system failure and will be retried. System failure is likely transient, and subsequent renewal attempts may succeed. The last successfully provisioned certificate may still be serving.", + "Most recent renewal failed due to an invalid DNS setup and will be retried. Renewal attempts will continue to fail until the certificate domain's DNS configuration is fixed. The last successfully provisioned certificate may still be serving.", + "All renewal attempts have been exhausted. Most recent renewal failed due to an invalid DNS setup and will not be retried. The last successfully provisioned certificate may still be serving." + ], + "enum": [ + "UNSPECIFIED_STATUS", + "OK", + "PENDING", + "FAILED_RETRYING_INTERNAL", + "FAILED_RETRYING_NOT_VISIBLE", + "FAILED_PERMANENTLY_NOT_VISIBLE" + ], + "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" + } + }, + "id": "SslSettings" + }, + "OperationMetadataV1": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { @@ -709,7 +815,7 @@ "type": "string" }, "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { @@ -718,20 +824,78 @@ "type": "string" } }, - "id": "OperationMetadataV1Alpha" + "id": "OperationMetadataV1" }, - "OperationMetadataExperimental": { - "description": "Metadata for the given google.longrunning.Operation.", + "CertificateRawData": { + "description": "An SSL certificate obtained from a certificate authority.", "type": "object", "properties": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@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" }, - "user": { - "description": "User who requested this operation.@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" + } + }, + "id": "CertificateRawData" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "type": "object", + "properties": { + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" + }, + "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.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + } + }, + "id": "Operation" + }, + "ListDomainMappingsResponse": { + "description": "Response message for DomainMappings.ListDomainMappings.", + "type": "object", + "properties": { + "domainMappings": { + "description": "The domain mappings for the application.", + "items": { + "$ref": "DomainMapping" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "id": "ListDomainMappingsResponse" + }, + "OperationMetadataExperimental": { + "properties": { "method": { "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", "type": "string" @@ -745,51 +909,64 @@ "format": "google-datetime", "description": "Time that this operation completed.@OutputOnly", "type": "string" - } - }, - "id": "OperationMetadataExperimental" - }, - "AuthorizedDomain": { - "properties": { - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", "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).", + "id": "OperationMetadataExperimental", + "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "ListAuthorizedDomainsResponse": { - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", "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.", + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", "items": { - "$ref": "AuthorizedDomain" + "type": "string" }, "type": "array" + }, + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@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" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", + "type": "string" } }, - "id": "ListAuthorizedDomainsResponse" + "id": "OperationMetadataV1Alpha" }, "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" - }, "details": { "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", "items": { @@ -805,26 +982,65 @@ "format": "int32", "description": "The status code, which should be an enum value of google.rpc.Code.", "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" + }, + "ListAuthorizedDomainsResponse": { + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "domains": { + "description": "The authorized domains belonging to the user.", + "items": { + "$ref": "AuthorizedDomain" + }, + "type": "array" + } + }, + "id": "ListAuthorizedDomainsResponse", + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "type": "object" + }, + "AuthorizedDomain": { + "properties": { + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "type": "string" + }, + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "type": "string" } }, - "id": "Status" + "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": { - "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" + }, + "standardEnvironmentAvailable": { + "description": "App Engine Standard Environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "LocationMetadata" + "id": "LocationMetadata", + "description": "Metadata for the given google.cloud.location.Location.", + "type": "object" }, "DomainMapping": { + "description": "A domain serving an App Engine application.", + "type": "object", "properties": { "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", @@ -838,17 +1054,15 @@ "type": "string" }, "sslSettings": { - "$ref": "SslSettings", - "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.", + "$ref": "SslSettings" }, "name": { "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", "type": "string" } }, - "id": "DomainMapping", - "description": "A domain serving an App Engine application.", - "type": "object" + "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 {}.", @@ -901,11 +1115,11 @@ "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" - }, - "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\"", @@ -930,15 +1144,6 @@ "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": { - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", - "type": "string" - }, - "domainMappingsCount": { - "format": "int32", - "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 requests when specifically requested by the view=FULL option.@OutputOnly", - "type": "integer" - }, "domainNames": { "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", "items": { @@ -955,15 +1160,15 @@ "type": "string" }, "certificateRawData": { - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", - "$ref": "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" + "description": "Only applicable if this certificate is managed by App Engine. Managed certificates are tied to the lifecycle of a DomainMapping and cannot be updated or deleted via the AuthorizedCertificates API. If this certificate is manually administered by the user, this field will be empty.@OutputOnly", + "$ref": "ManagedCertificate" }, "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 requests when specifically requested by the view=FULL option.@OutputOnly", + "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "items": { "type": "string" }, @@ -973,6 +1178,15 @@ "format": "google-datetime", "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", "type": "string" + }, + "name": { + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "type": "string" + }, + "domainMappingsCount": { + "format": "int32", + "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", + "type": "integer" } }, "id": "AuthorizedCertificate" @@ -981,6 +1195,10 @@ "description": "A DNS resource record.", "type": "object", "properties": { + "name": { + "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "type": "string" + }, "type": { "description": "Resource record type. Example: AAAA.", "type": "string", @@ -998,15 +1216,13 @@ "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" } }, "id": "ResourceRecord" }, "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -1020,13 +1236,9 @@ "type": "array" } }, - "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": { "insertTime": { "format": "google-datetime", @@ -1055,209 +1267,9 @@ "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.", - "type": "string" - }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "items": { - "$ref": "AuthorizedCertificate" - }, - "type": "array" - } - }, - "id": "ListAuthorizedCertificatesResponse" - }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "insertTime": { - "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@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" - }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta5" - }, - "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.", - "items": { - "$ref": "Location" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListLocationsResponse" - }, - "ManagedCertificate": { - "properties": { - "lastRenewalTime": { - "format": "google-datetime", - "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", - "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.", - "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." - ], - "enum": [ - "UNSPECIFIED_STATUS", - "OK", - "PENDING", - "FAILED_RETRYING_INTERNAL", - "FAILED_RETRYING_NOT_VISIBLE", - "FAILED_PERMANENTLY_NOT_VISIBLE" - ] - } - }, - "id": "ManagedCertificate", - "description": "A certificate managed by App Engine.", - "type": "object" - }, - "OperationMetadataV1": { - "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1", + "id": "OperationMetadata", "description": "Metadata for the given google.longrunning.Operation.", "type": "object" - }, - "SslSettings": { - "properties": { - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify no_managed_certificate on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.", - "type": "string" - }, - "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" - } - }, - "id": "SslSettings", - "description": "SSL configuration for a DomainMapping resource.", - "type": "object" - }, - "CertificateRawData": { - "description": "An SSL certificate obtained from a certificate authority.", - "type": "object", - "properties": { - "privateKey": { - "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", - "type": "string" - }, - "publicCertificate": { - "description": "PEM encoded x.509 public key certificate. This field is set once on certificate creation. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN CERTIFICATE----- \u003ccertificate_value\u003e -----END CERTIFICATE----- \u003c/pre\u003e", - "type": "string" - } - }, - "id": "CertificateRawData" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object", - "properties": { - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "$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" - } - } - }, - "id": "Operation" } }, "protocol": "rest", @@ -1283,11 +1295,8 @@ } }, "kind": "discovery#restDescription", - "servicePath": "", "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "servicePath": "", "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch" + "basePath": "" } diff --git a/DiscoveryJson/appengine_v1beta.json b/DiscoveryJson/appengine_v1beta.json index b110ad1b05..fdaebeff30 100644 --- a/DiscoveryJson/appengine_v1beta.json +++ b/DiscoveryJson/appengine_v1beta.json @@ -1,119 +1,24 @@ { + "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": "20170630", "title": "Google App Engine Admin API", "discoveryVersion": "v1", "ownerName": "Google", "resources": { "apps": { - "methods": { - "repair": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}:repair", - "id": "appengine.apps.repair", - "path": "v1beta/apps/{appsId}: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" - } - }, - "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.", - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", - "type": "string", - "required": true - }, - "updateMask": { - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta/apps/{appsId}", - "path": "v1beta/apps/{appsId}", - "id": "appengine.apps.patch" - }, - "get": { - "id": "appengine.apps.get", - "path": "v1beta/apps/{appsId}", - "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.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1beta/apps/{appsId}" - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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/python/console/).", - "request": { - "$ref": "Application" - } - } - }, "resources": { "locations": { "methods": { "get": { + "id": "appengine.apps.locations.get", + "path": "v1beta/apps/{appsId}/locations/{locationsId}", + "description": "Get information about a location.", "response": { "$ref": "Location" }, @@ -123,17 +28,17 @@ ], "httpMethod": "GET", "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Resource name for the location.", - "type": "string", - "required": true - }, "locationsId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Resource name for the location.", + "type": "string", + "required": true } }, "scopes": [ @@ -141,22 +46,17 @@ "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": "Get information about a location." + "flatPath": "v1beta/apps/{appsId}/locations/{locationsId}" }, "list": { - "id": "appengine.apps.locations.list", - "path": "v1beta/apps/{appsId}/locations", "description": "Lists information about the supported locations for this service.", + "httpMethod": "GET", "response": { "$ref": "ListLocationsResponse" }, "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "parameters": { "pageSize": { "location": "query", @@ -186,43 +86,14 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}/locations" + "flatPath": "v1beta/apps/{appsId}/locations", + "path": "v1beta/apps/{appsId}/locations", + "id": "appengine.apps.locations.list" } } }, "authorizedCertificates": { "methods": { - "delete": { - "description": "Deletes the specified SSL certificate.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "DELETE", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "type": "string", - "required": true - }, - "authorizedCertificatesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "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}" - }, "patch": { "request": { "$ref": "AuthorizedCertificate" @@ -240,21 +111,21 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "authorizedCertificatesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, "updateMask": { + "location": "query", "format": "google-fieldmask", "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.", - "type": "string", - "location": "query" + "type": "string" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", "type": "string", + "required": true + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", "required": true, "location": "path" } @@ -264,7 +135,6 @@ "id": "appengine.apps.authorizedCertificates.patch" }, "get": { - "description": "Gets the specified SSL certificate.", "response": { "$ref": "AuthorizedCertificate" }, @@ -274,6 +144,12 @@ ], "httpMethod": "GET", "parameters": { + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, "appsId": { "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/authorizedCertificates/12345.", @@ -281,19 +157,13 @@ "required": true }, "view": { - "description": "Controls the set of fields returned in the GET response.", - "type": "string", - "location": "query", "enum": [ "BASIC_CERTIFICATE", "FULL_CERTIFICATE" - ] - }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", + ], + "description": "Controls the set of fields returned in the GET response.", "type": "string", - "required": true, - "location": "path" + "location": "query" } }, "scopes": [ @@ -303,21 +173,20 @@ ], "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", "id": "appengine.apps.authorizedCertificates.get", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}" + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "description": "Gets the specified SSL certificate." }, "list": { - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, + "path": "v1beta/apps/{appsId}/authorizedCertificates", + "id": "appengine.apps.authorizedCertificates.list", + "description": "Lists all SSL certificates the user is authorized to administer.", + "httpMethod": "GET", "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" - ], + "response": { + "$ref": "ListAuthorizedCertificatesResponse" + }, "parameters": { "pageToken": { "description": "Continuation token for fetching the next page of results.", @@ -325,57 +194,253 @@ "location": "query" }, "appsId": { + "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", - "required": true, - "location": "path" + "required": true }, "pageSize": { + "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" + "type": "integer" + }, + "view": { + "description": "Controls the set of fields returned in the LIST response.", + "type": "string", + "location": "query", + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ] } }, - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.list", - "path": "v1beta/apps/{appsId}/authorizedCertificates", - "description": "Lists all SSL certificates the user is authorized to administer." + "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" }, "create": { + "description": "Uploads the specified SSL certificate.", "request": { "$ref": "AuthorizedCertificate" }, - "description": "Uploads the specified SSL certificate.", - "httpMethod": "POST", - "parameterOrder": [ - "appsId" - ], "response": { "$ref": "AuthorizedCertificate" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "appsId" ], + "httpMethod": "POST", "parameters": { "appsId": { - "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", - "required": true + "required": true, + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", - "path": "v1beta/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create" - } - } - }, - "services": { - "resources": { - "versions": { - "methods": { + "id": "appengine.apps.authorizedCertificates.create", + "path": "v1beta/apps/{appsId}/authorizedCertificates" + }, + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", + "type": "string", + "required": true, + "location": "path" + }, + "authorizedCertificatesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.delete", + "description": "Deletes the specified SSL certificate." + } + } + }, + "services": { + "methods": { + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "DELETE", + "parameters": { + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "type": "string", + "required": true, + "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." + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "type": "string", + "required": true, + "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" + } + }, + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch", + "request": { + "$ref": "Service" + }, + "description": "Updates the configuration of the specified service." + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Service" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "type": "string", + "required": true + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "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}", + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.get", + "description": "Gets the current configuration of the specified service." + }, + "list": { + "flatPath": "v1beta/apps/{appsId}/services", + "id": "appengine.apps.services.list", + "path": "v1beta/apps/{appsId}/services", + "description": "Lists all the services in the application.", + "response": { + "$ref": "ListServicesResponse" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string", + "location": "query" + }, + "appsId": { + "location": "path", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "type": "string", + "required": true + }, + "pageSize": { + "format": "int32", + "description": "Maximum results to return per page.", + "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" + ] + } + }, + "resources": { + "versions": { + "methods": { "patch": { + "path": "v1beta/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/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.", "httpMethod": "PATCH", "parameterOrder": [ "appsId", @@ -390,16 +455,16 @@ ], "parameters": { "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "updateMask": { - "location": "query", "format": "google-fieldmask", "description": "Standard field mask for the set of fields to be updated.", - "type": "string" + "type": "string", + "location": "query" }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -408,59 +473,53 @@ "location": "path" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta/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/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." + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}" }, "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", "servicesId", "versionsId" ], - "response": { - "$ref": "Version" - }, + "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`.", - "type": "string", - "required": true - }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "type": "string", - "required": true + "required": true, + "location": "path" }, "view": { + "location": "query", "enum": [ "BASIC", "FULL" ], "description": "Controls the set of fields returned in the Get response.", - "type": "string", - "location": "query" + "type": "string" }, "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, @@ -468,12 +527,14 @@ } }, "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}" }, "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", "response": { "$ref": "ListVersionsResponse" }, @@ -481,23 +542,23 @@ "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 `parent`. See documentation of `appsId`.", - "type": "string", - "required": true - }, "pageToken": { "location": "query", "description": "Continuation token for fetching the next page of results.", "type": "string" }, "appsId": { - "location": "path", "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", "type": "string", - "required": true + "required": true, + "location": "path" }, "pageSize": { "format": "int32", @@ -506,43 +567,41 @@ "location": "query" }, "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.", + "type": "string", + "location": "query" + }, + "servicesId": { + "description": "Part of `parent`. See documentation of `appsId`.", + "type": "string", + "required": true, + "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", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.list" + } }, "create": { "description": "Deploys code and resource files to a new version.", "request": { "$ref": "Version" }, - "response": { - "$ref": "Operation" - }, + "httpMethod": "POST", "parameterOrder": [ "appsId", "servicesId" ], - "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, "parameters": { "servicesId": { + "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "appsId": { "location": "path", @@ -555,10 +614,14 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions" + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "id": "appengine.apps.services.versions.create" }, "delete": { + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.delete", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "description": "Deletes an existing Version resource.", "response": { "$ref": "Operation" }, @@ -573,16 +636,16 @@ ], "parameters": { "servicesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "type": "string", - "required": true, - "location": "path" + "required": true }, "versionsId": { "location": "path", @@ -590,20 +653,14 @@ "type": "string", "required": true } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "description": "Deletes an existing Version resource." + } } }, "resources": { "instances": { "methods": { "delete": { - "id": "appengine.apps.services.versions.instances.delete", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Stops a running instance.", + "httpMethod": "DELETE", "response": { "$ref": "Operation" }, @@ -613,8 +670,16 @@ "versionsId", "instancesId" ], - "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, "instancesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", @@ -622,31 +687,24 @@ "location": "path" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", "type": "string", - "required": true, - "location": "path" + "required": true }, "versionsId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "id": "appengine.apps.services.versions.instances.delete", + "description": "Stops a running instance." }, "get": { - "description": "Gets instance information.", "response": { "$ref": "Instance" }, @@ -665,22 +723,22 @@ "location": "path" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", "type": "string", - "required": true, - "location": "path" + "required": true }, "versionsId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "servicesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "scopes": [ @@ -690,7 +748,8 @@ ], "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}" + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "description": "Gets instance information." }, "list": { "description": "Lists the instances of a version.Tip: To aggregate details about instances over time, see the Stackdriver Monitoring API (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).", @@ -703,53 +762,54 @@ "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": { + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" + }, + "versionsId": { + "location": "path", + "description": "Part of `parent`. See documentation of `appsId`.", + "type": "string", + "required": true + }, "servicesId": { + "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "location": "path", "description": "Part of `parent`. Name of the parent Version resource. Example: apps/myapp/services/default/versions/v1.", "type": "string", "required": true - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer" - }, - "versionsId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "type": "string", - "required": true, - "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", "id": "appengine.apps.services.versions.instances.list", "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances" }, "debug": { + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", "id": "appengine.apps.services.versions.instances.debug", "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}: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" }, + "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" }, @@ -760,254 +820,223 @@ "instancesId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "instancesId": { - "location": "path", + "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "type": "string", "required": true, "location": "path" }, - "versionsId": { + "servicesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, - "servicesId": { + "instancesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", + "required": true + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "type": "string", "required": true, "location": "path" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug" + } } } } } } - }, + } + }, + "authorizedDomains": { "methods": { - "patch": { + "list": { + "description": "Lists all domains the user is authorized to administer.", "response": { - "$ref": "Operation" + "$ref": "ListAuthorizedDomainsResponse" }, "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "appsId" ], + "httpMethod": "GET", "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", - "type": "string", - "required": true, - "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": { - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", + "pageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string", "location": "query" }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", "required": true, "location": "path" + }, + "pageSize": { + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer", + "location": "query" } }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "request": { - "$ref": "Service" - }, - "description": "Updates the 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}/authorizedDomains", + "id": "appengine.apps.authorizedDomains.list", + "path": "v1beta/apps/{appsId}/authorizedDomains" + } + } + }, + "operations": { + "methods": { "get": { - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get", - "description": "Gets the current configuration of the specified service.", + "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": "Service" + "$ref": "Operation" }, "parameterOrder": [ "appsId", - "servicesId" + "operationsId" + ], + "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`.", - "type": "string", - "required": true, - "location": "path" - }, "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "description": "Part of `name`. The name of the operation resource.", "type": "string", "required": true + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "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}" + "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}", + "path": "v1beta/apps/{appsId}/operations/{operationsId}", + "id": "appengine.apps.operations.get" }, "list": { + "httpMethod": "GET", "response": { - "$ref": "ListServicesResponse" + "$ref": "ListOperationsResponse" }, "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "pageToken": { - "description": "Continuation token for fetching the next page of results.", + "filter": { + "description": "The standard list filter.", "type": "string", "location": "query" }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. The name of the operation's parent resource.", "type": "string", - "required": true + "required": true, + "location": "path" }, "pageSize": { "format": "int32", - "description": "Maximum results to return per page.", + "description": "The standard list page size.", "type": "integer", "location": "query" } }, - "flatPath": "v1beta/apps/{appsId}/services", - "id": "appengine.apps.services.list", - "path": "v1beta/apps/{appsId}/services", - "description": "Lists all the services in the application." - }, - "delete": { + "flatPath": "v1beta/apps/{appsId}/operations", + "path": "v1beta/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." + } + } + }, + "domainMappings": { + "methods": { + "patch": { + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.patch", + "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "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", - "servicesId" + "domainMappingsId" ], - "httpMethod": "DELETE", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "type": "string", - "required": true, - "location": "path" - } - }, + "httpMethod": "PATCH", "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." - } - } - }, - "authorizedDomains": { - "methods": { - "list": { - "description": "Lists all domains the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedDomainsResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", "parameters": { - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" + "updateMask": { + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string", + "location": "query" }, "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", "type": "string", "required": true, "location": "path" }, - "pageSize": { - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" + "domainMappingsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true } - }, - "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", - "id": "appengine.apps.authorizedDomains.list", - "path": "v1beta/apps/{appsId}/authorizedDomains" - } - } - }, - "operations": { - "methods": { + } + }, "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", "httpMethod": "GET", "response": { - "$ref": "Operation" + "$ref": "DomainMapping" }, "parameterOrder": [ "appsId", - "operationsId" + "domainMappingsId" ], "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", + "domainMappingsId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" }, - "operationsId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", "type": "string", "required": true } @@ -1017,138 +1046,93 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}", - "path": "v1beta/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get" + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.get", + "description": "Gets the specified domain mapping." }, "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.list", + "path": "v1beta/apps/{appsId}/domainMappings", + "description": "Lists the domain mappings on an application.", + "response": { + "$ref": "ListDomainMappingsResponse" + }, "parameterOrder": [ "appsId" ], "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { - "filter": { + "pageSize": { "location": "query", - "description": "The standard list filter.", - "type": "string" + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" }, "pageToken": { "location": "query", - "description": "The standard list page token.", + "description": "Continuation token for fetching the next page of results.", "type": "string" }, "appsId": { - "description": "Part of `name`. The name of the operation's parent resource.", - "type": "string", - "required": true, - "location": "path" - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1beta/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "path": "v1beta/apps/{appsId}/operations" - } - } - }, - "domainMappings": { - "methods": { - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { + "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/domainMappings", + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "create": { "id": "appengine.apps.domainMappings.create", "path": "v1beta/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" - } - }, - "delete": { - "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.", - "httpMethod": "DELETE", + }, + "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", - "domainMappingsId" + "appsId" ], + "httpMethod": "POST", "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.", - "type": "string", - "required": true, - "location": "path" - }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "type": "string", "required": true, "location": "path" } }, - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.delete" + "flatPath": "v1beta/apps/{appsId}/domainMappings" }, - "patch": { - "response": { - "$ref": "Operation" - }, + "delete": { "parameterOrder": [ "appsId", "domainMappingsId" ], - "httpMethod": "PATCH", + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "updateMask": { - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string", - "location": "query" - }, "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 delete. Example: apps/myapp/domainMappings/example.com.", "type": "string", - "required": true, - "location": "path" + "required": true }, "domainMappingsId": { "location": "path", @@ -1158,82 +1142,9 @@ } }, "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch", + "id": "appengine.apps.domainMappings.delete", "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "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." - }, - "get": { - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get", - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "description": "Gets the specified domain mapping.", - "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.", - "type": "string", - "required": true, - "location": "path" - }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "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" - ] - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "ListDomainMappingsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "type": "string", - "required": true, - "location": "path" - }, - "pageSize": { - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1beta/apps/{appsId}/domainMappings", - "path": "v1beta/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list", - "description": "Lists the domain mappings on an application." + "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource." } } }, @@ -1241,83 +1152,50 @@ "resources": { "ingressRules": { "methods": { - "batchUpdate": { - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", - "id": "appengine.apps.firewall.ingressRules.batchUpdate", - "path": "v1beta/apps/{appsId}/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.", + "delete": { + "description": "Deletes the specified firewall rule.", "response": { - "$ref": "BatchUpdateIngressRulesResponse" + "$ref": "Empty" }, - "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.", - "type": "string", - "required": true - } - } - }, - "delete": { - "httpMethod": "DELETE", "parameterOrder": [ "appsId", "ingressRulesId" ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "DELETE", "parameters": { - "appsId": { - "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", + "ingressRulesId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" }, - "ingressRulesId": { - "description": "Part of `name`. See documentation of `appsId`.", + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", "type": "string", "required": true, "location": "path" } }, + "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.delete", - "description": "Deletes the specified firewall rule." + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}" }, "list": { - "description": "Lists the firewall rules of an application.", - "parameterOrder": [ - "appsId" - ], "response": { "$ref": "ListIngressRulesResponse" }, - "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" + "parameterOrder": [ + "appsId" ], + "httpMethod": "GET", "parameters": { "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "appsId": { "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", @@ -1326,33 +1204,35 @@ "location": "path" }, "pageSize": { + "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" + "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" + "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", "id": "appengine.apps.firewall.ingressRules.list", - "path": "v1beta/apps/{appsId}/firewall/ingressRules" + "path": "v1beta/apps/{appsId}/firewall/ingressRules", + "description": "Lists the firewall rules of an application." }, "create": { - "request": { + "response": { "$ref": "FirewallRule" }, - "description": "Creates a firewall rule for the application.", - "httpMethod": "POST", "parameterOrder": [ "appsId" ], - "response": { - "$ref": "FirewallRule" - }, + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -1365,10 +1245,15 @@ } }, "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules", + "id": "appengine.apps.firewall.ingressRules.create", "path": "v1beta/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.create" + "request": { + "$ref": "FirewallRule" + }, + "description": "Creates a firewall rule for the application." }, "get": { + "httpMethod": "GET", "response": { "$ref": "FirewallRule" }, @@ -1376,17 +1261,16 @@ "appsId", "ingressRulesId" ], - "httpMethod": "GET", "parameters": { - "ingressRulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", "type": "string", + "required": true + }, + "ingressRulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", "required": true, "location": "path" } @@ -1397,19 +1281,19 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.get", "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "id": "appengine.apps.firewall.ingressRules.get", "description": "Gets the specified firewall rule." }, "patch": { - "httpMethod": "PATCH", + "response": { + "$ref": "FirewallRule" + }, "parameterOrder": [ "appsId", "ingressRulesId" ], - "response": { - "$ref": "FirewallRule" - }, + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -1421,93 +1305,205 @@ "type": "string" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/firewall/ingressRules/100.", "type": "string", - "required": true, - "location": "path" + "required": true }, "ingressRulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", "id": "appengine.apps.firewall.ingressRules.patch", + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", "request": { "$ref": "FirewallRule" }, "description": "Updates the specified firewall rule." + }, + "batchUpdate": { + "description": "Replaces the entire firewall ruleset in one bulk operation. This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an \"allow all\" rule is explicitly added to the end of the list.", + "request": { + "$ref": "BatchUpdateIngressRulesRequest" + }, + "response": { + "$ref": "BatchUpdateIngressRulesResponse" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "POST", + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", + "id": "appengine.apps.firewall.ingressRules.batchUpdate", + "path": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate" } } } } } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], + }, + "methods": { + "repair": { + "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", + "type": "string", + "required": true + } + }, + "flatPath": "v1beta/apps/{appsId}:repair", + "id": "appengine.apps.repair", + "path": "v1beta/apps/{appsId}: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." + }, + "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": { + "appsId": { + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "type": "string", + "required": true, + "location": "path" + }, + "updateMask": { + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta/apps/{appsId}", + "id": "appengine.apps.patch", + "path": "v1beta/apps/{appsId}" + }, + "get": { + "response": { + "$ref": "Application" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the Application resource to get. Example: apps/myapp.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1beta/apps/{appsId}", + "id": "appengine.apps.get", + "path": "v1beta/apps/{appsId}", + "description": "Gets information about an application." + }, + "create": { + "request": { + "$ref": "Application" + }, + "description": "Creates an App Engine application for a Google Cloud Platform project. Required fields:\nid - The ID of the target Cloud Platform project.\nlocation - The region (https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.For more information about App Engine applications, see Managing Projects, Applications, and Billing (https://cloud.google.com/appengine/docs/python/console/).", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta/apps", + "id": "appengine.apps.create", + "path": "v1beta/apps" + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" + }, + "$.xgafv": { "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" ], - "location": "query" + "location": "query", + "enum": [ + "1", + "2" + ] }, "callback": { + "location": "query", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "alt": { "enum": [ @@ -1534,1966 +1530,1979 @@ "description": "API key. 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.", + "default": "true", + "type": "boolean", + "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" } }, "schemas": { - "CpuUtilization": { - "description": "Target scaling by CPU usage.", + "Version": { + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", "type": "object", "properties": { - "aggregationWindowLength": { - "format": "google-duration", - "description": "Period of time over which CPU utilization is calculated.", + "env": { + "description": "App Engine execution environment for this version.Defaults to standard.", "type": "string" }, - "targetUtilization": { - "format": "double", - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "type": "number" - } - }, - "id": "CpuUtilization" - }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", - "type": "object", - "properties": { - "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" + "handlers": { + "description": "An ordered list of URL-matching patterns that should be applied to incoming requests. The first matching URL handles the request and other request handlers are not attempted.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "diskUsageBytes": { + "format": "int64", + "description": "Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk.@OutputOnly", "type": "string" }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "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." + }, + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "readinessCheck": { + "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set.", + "$ref": "ReadinessCheck" + }, + "manualScaling": { + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "$ref": "ManualScaling" + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", "type": "string" }, - "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.", + "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": { + "$ref": "EndpointsApiService", + "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + }, + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", "type": "boolean" - } - }, - "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": { - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "versionUrl": { + "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", "type": "string" }, - "details": { - "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - } - }, - "id": "Status" - }, - "ManualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object", - "properties": { - "instances": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "ManualScaling" - }, - "LocationMetadata": { - "properties": { - "standardEnvironmentAvailable": { - "description": "App Engine Standard Environment is available in the given location.@OutputOnly", - "type": "boolean" + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", + "type": "string" }, - "flexibleEnvironmentAvailable": { - "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", - "type": "boolean" - } - }, - "id": "LocationMetadata", - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object" - }, - "Service": { - "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle tasks such as backend data analysis or API requests from mobile devices. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", - "type": "object", - "properties": { - "split": { - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", - "$ref": "TrafficSplit" + "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" }, - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", + "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" }, - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." + }, + "createTime": { + "format": "google-datetime", + "description": "Time that this version was created.@OutputOnly", "type": "string" - } - }, - "id": "Service" - }, - "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.", + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." + }, + "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.", "items": { - "$ref": "Operation" + "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" + ] }, "type": "array" }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse" - }, - "FirewallRule": { - "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", - "type": "object", - "properties": { - "description": { - "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", - "type": "string" + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" }, - "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.", + "defaultExpiration": { + "format": "google-duration", + "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", "type": "string" }, - "priority": { - "format": "int32", - "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.", - "type": "integer" + "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.", + "items": { + "$ref": "Library" + }, + "type": "array" }, - "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" - } - }, - "id": "FirewallRule" - }, - "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", + "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" }, - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@OutputOnly", - "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" }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "runtime": { + "description": "Desired runtime. Example: python27.", "type": "string" }, - "insertTime": { - "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", + "createdBy": { + "description": "Email address of the user who created this version.@OutputOnly", "type": "string" }, - "user": { - "description": "User who requested this operation.@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" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "type": "string" + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", + "type": "object" + }, + "livenessCheck": { + "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", + "$ref": "LivenessCheck" + }, + "network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "$ref": "Network" + }, + "betaSettings": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "type": "object" } }, - "id": "OperationMetadata" + "id": "Version" }, - "ListAuthorizedCertificatesResponse": { + "RepairApplicationRequest": { + "description": "Request message for 'Applications.RepairApplication'.", + "type": "object", + "properties": {}, + "id": "RepairApplicationRequest" + }, + "CertificateRawData": { "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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" }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "items": { - "$ref": "AuthorizedCertificate" - }, - "type": "array" + "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" } }, - "id": "ListAuthorizedCertificatesResponse", - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "id": "CertificateRawData", + "description": "An SSL certificate obtained from a certificate authority.", "type": "object" }, - "FeatureSettings": { - "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", + "BuildInfo": { + "description": "Google Cloud Container Builder build information.", "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" + "cloudBuildId": { + "description": "The Google Cloud Container Builder build id. Example: \"f966068f-08b2-42c8-bdfe-74137dff2bf9\"", + "type": "string" } }, - "id": "FeatureSettings" + "id": "BuildInfo" }, - "SslSettings": { - "description": "SSL configuration for a DomainMapping resource.", + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", "type": "object", "properties": { - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "SslSettings" + "id": "ScriptHandler" }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "FileInfo": { "properties": { - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", "type": "string" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + } + }, + "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" + }, + "OperationMetadataExperimental": { + "properties": { + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", "type": "string" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" + "method": { + "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "type": "string" }, "insertTime": { "format": "google-datetime", "description": "Time that this operation was created.@OutputOnly", "type": "string" - } - }, - "id": "OperationMetadataV1" - }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] }, - "staticFile": { - "description": "Static file content to be served for this error.", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", "type": "string" } }, - "id": "ErrorHandler" + "id": "OperationMetadataExperimental", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, - "Network": { - "description": "Extra network settings. Only applicable for VM runtimes.", + "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": { - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", - "type": "string" - }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation.", + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", "type": "string" }, - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", - "items": { - "type": "string" - }, - "type": "array" - }, - "name": { - "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", "type": "string" } }, - "id": "Network" + "id": "AuthorizedDomain" }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application. Next tag: 19", + "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": { - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" - }, - "defaultCookieExpiration": { - "format": "google-duration", - "description": "Cookie expiration policy for this application.", - "type": "string" - }, - "id": { - "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: myapp.", - "type": "string" - }, - "locationId": { - "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", - "type": "string" + "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" }, - "servingStatus": { + "shardBy": { "enum": [ "UNSPECIFIED", - "SERVING", - "USER_DISABLED", - "SYSTEM_DISABLED" + "COOKIE", + "IP", + "RANDOM" ], - "description": "Serving status of this application.", + "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": [ - "Serving status is unspecified.", - "Application is serving.", - "Application has been disabled by the user.", - "Application has been disabled by the system." + "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." ] - }, - "defaultHostname": { - "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", - "type": "string" - }, - "featureSettings": { - "description": "The feature specific settings to be used in the application.", - "$ref": "FeatureSettings" - }, - "iap": { - "$ref": "IdentityAwareProxy" - }, - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", - "type": "string" - }, - "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", - "items": { - "$ref": "UrlDispatchRule" - }, - "type": "array" - }, - "gcrDomain": { - "description": "The Google Container Registry domain used for storing managed build docker images for this application.", - "type": "string" } }, - "id": "Application" + "id": "TrafficSplit" }, - "Instance": { + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", "properties": { - "qps": { - "format": "float", - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "type": "number" - }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@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", + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", "type": "string" }, - "averageLatency": { - "format": "int32", - "description": "Average latency (ms) over the last minute.@OutputOnly", - "type": "integer" - }, - "memoryUsage": { - "format": "int64", - "description": "Total memory in use (bytes).@OutputOnly", - "type": "string" + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "errors": { - "format": "int32", - "description": "Number of errors since this instance was started.@OutputOnly", - "type": "integer" - }, - "availability": { - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ], - "description": "Availability of the instance.@OutputOnly", + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", "type": "string" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", "type": "string" + } + }, + "id": "OperationMetadataV1Beta" + }, + "ListIngressRulesResponse": { + "description": "Response message for Firewall.ListIngressRules.", + "type": "object", + "properties": { + "ingressRules": { + "description": "The ingress FirewallRules for this application.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" }, - "startTime": { - "format": "google-datetime", - "description": "Time that this instance was started.@OutputOnly", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "id": "ListIngressRulesResponse" + }, + "ListServicesResponse": { + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" }, - "vmDebugEnabled": { - "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "boolean" + "services": { + "description": "The services belonging to the requested application.", + "items": { + "$ref": "Service" + }, + "type": "array" + } + }, + "id": "ListServicesResponse", + "description": "Response message for Services.ListServices.", + "type": "object" + }, + "Deployment": { + "properties": { + "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" }, - "requests": { - "format": "int32", - "description": "Number of requests since this instance was started.@OutputOnly", - "type": "integer" + "zip": { + "$ref": "ZipInfo", + "description": "The zip file for this deployment, if this is a zip deployment." }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" + "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" }, - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "build": { + "$ref": "BuildInfo", + "description": "Google Cloud Container Builder build information." } }, - "id": "Instance", - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "id": "Deployment", + "description": "Code and application artifacts used to deploy a version to App Engine.", "type": "object" }, - "LivenessCheck": { + "Resources": { "properties": { - "timeout": { - "format": "google-duration", - "description": "Time before the check is considered failed.", - "type": "string" + "volumes": { + "description": "User specified volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" }, - "failureThreshold": { - "format": "uint32", - "description": "Number of consecutive failed checks required before considering the VM unhealthy.", - "type": "integer" + "diskGb": { + "format": "double", + "description": "Disk size (GB) needed.", + "type": "number" }, - "initialDelay": { - "format": "google-duration", - "description": "The initial delay before starting to execute the checks.", - "type": "string" + "memoryGb": { + "format": "double", + "description": "Memory (GB) needed.", + "type": "number" }, - "path": { - "description": "The request path.", + "cpu": { + "format": "double", + "description": "Number of CPU cores needed.", + "type": "number" + } + }, + "id": "Resources", + "description": "Machine resources for a version.", + "type": "object" + }, + "Volume": { + "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "type": "object", + "properties": { + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" }, - "successThreshold": { - "format": "uint32", - "description": "Number of consecutive successful checks required before considering the VM healthy.", - "type": "integer" - }, - "host": { - "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", - "type": "string" + "sizeGb": { + "format": "double", + "description": "Volume size in gigabytes.", + "type": "number" }, - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", + "name": { + "description": "Unique name for the volume.", "type": "string" } }, - "id": "LivenessCheck", - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", - "type": "object" + "id": "Volume" }, - "BatchUpdateIngressRulesRequest": { - "description": "Request message for Firewall.BatchUpdateIngressRules.", + "BatchUpdateIngressRulesResponse": { + "description": "Response message for Firewall.UpdateAllIngressRules.", "type": "object", "properties": { "ingressRules": { - "description": "A list of FirewallRules to replace the existing set.", + "description": "The full list of ingress FirewallRules for this application.", "items": { "$ref": "FirewallRule" }, "type": "array" } }, - "id": "BatchUpdateIngressRulesRequest" + "id": "BatchUpdateIngressRulesResponse" }, - "NetworkUtilization": { - "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", "type": "object", "properties": { - "targetSentBytesPerSecond": { - "format": "int32", - "description": "Target bytes sent per second.", - "type": "integer" - }, - "targetReceivedBytesPerSecond": { - "format": "int32", - "description": "Target bytes received per second.", - "type": "integer" - }, - "targetSentPacketsPerSecond": { - "format": "int32", - "description": "Target packets sent per second.", - "type": "integer" + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" }, - "targetReceivedPacketsPerSecond": { - "format": "int32", - "description": "Target packets received per second.", - "type": "integer" + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" } }, - "id": "NetworkUtilization" + "id": "ListInstancesResponse" }, - "Location": { + "ListDomainMappingsResponse": { + "description": "Response message for DomainMappings.ListDomainMappings.", + "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\".", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" }, - "metadata": { - "description": "Service-specific metadata. For example the available capacity at the given location.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "labels": { - "additionalProperties": { - "type": "string" + "domainMappings": { + "description": "The domain mappings for the application.", + "items": { + "$ref": "DomainMapping" }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", - "type": "object" + "type": "array" } }, - "id": "Location", - "description": "A resource that represents Google Cloud Platform location.", - "type": "object" + "id": "ListDomainMappingsResponse" }, - "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.", + "OperationMetadataV1Alpha": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "healthyThreshold": { - "format": "uint32", - "description": "Number of consecutive successful health checks required before receiving traffic.", - "type": "integer" + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "restartThreshold": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before an instance is restarted.", - "type": "integer" + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" }, - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "timeout": { - "format": "google-duration", - "description": "Time before the health check is considered failed.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "unhealthyThreshold": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before removing traffic.", - "type": "integer" + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" }, - "disableHealthCheck": { - "description": "Whether to explicitly disable health checks for this instance.", - "type": "boolean" + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" }, - "host": { - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", "type": "string" } }, - "id": "HealthCheck" + "id": "OperationMetadataV1Alpha" }, - "ReadinessCheck": { - "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", "type": "object", "properties": { - "appStartTimeout": { - "format": "google-duration", - "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.", - "type": "string" - }, - "path": { - "description": "The request path.", - "type": "string" - }, - "successThreshold": { - "format": "uint32", - "description": "Number of consecutive successful checks required before receiving traffic.", - "type": "integer" - }, - "host": { - "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", + "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" }, - "checkInterval": { - "format": "google-duration", - "description": "Interval between health checks.", + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", "type": "string" }, - "failureThreshold": { - "format": "uint32", - "description": "Number of consecutive failed checks required before removing traffic.", - "type": "integer" - }, - "timeout": { - "format": "google-duration", - "description": "Time before the check is considered failed.", + "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": "ReadinessCheck" + "id": "UrlDispatchRule" }, - "DebugInstanceRequest": { - "description": "Request message for Instances.DebugInstance.", + "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).", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" + }, + "versions": { + "description": "The versions belonging to the requested service.", + "items": { + "$ref": "Version" + }, + "type": "array" } }, - "id": "DebugInstanceRequest" + "id": "ListVersionsResponse" }, - "StandardSchedulerSettings": { - "description": "Scheduler settings for standard environment.", - "type": "object", + "ListAuthorizedDomainsResponse": { "properties": { - "targetThroughputUtilization": { - "format": "double", - "description": "Target throughput utilization ratio to maintain when scaling", - "type": "number" - }, - "maxInstances": { - "format": "int32", - "description": "Maximum number of instances for an app version. Set to a non-positive value (0 by convention) to disable max_instances configuration.", - "type": "integer" - }, - "minInstances": { - "format": "int32", - "description": "Minimum number of instances for an app version. Set to a non-positive value (0 by convention) to disable min_instances configuration.", - "type": "integer" + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" }, - "targetCpuUtilization": { - "format": "double", - "description": "Target CPU utilization ratio to maintain when scaling.", - "type": "number" + "domains": { + "description": "The authorized domains belonging to the user.", + "items": { + "$ref": "AuthorizedDomain" + }, + "type": "array" } }, - "id": "StandardSchedulerSettings" + "id": "ListAuthorizedDomainsResponse", + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "type": "object" }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", + "DomainMapping": { + "description": "A domain serving an App Engine application.", "type": "object", "properties": { - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "insertTime": { - "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", - "type": "string" + "resourceRecords": { + "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "items": { + "$ref": "ResourceRecord" + }, + "type": "array" }, - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@OutputOnly", + "id": { + "description": "Relative name of the domain serving the application. Example: example.com.", "type": "string" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" + "sslSettings": { + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.", + "$ref": "SslSettings" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", "type": "string" } }, - "id": "OperationMetadataV1Beta5" + "id": "DomainMapping" }, - "Version": { + "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": { "properties": { - "createTime": { - "format": "google-datetime", - "description": "Time that this version was created.@OutputOnly", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" + } + }, + "id": "ApiEndpointHandler", + "description": "Uses Google Cloud Endpoints to handle requests.", + "type": "object" + }, + "AutomaticScaling": { + "properties": { + "minTotalInstances": { + "format": "int32", + "description": "Minimum number of instances that should be maintained for this version.", + "type": "integer" }, - "resources": { - "description": "Machine resources for this version. Only applicable for VM runtimes.", - "$ref": "Resources" - }, - "inboundServices": { - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "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" - }, - "type": "array", - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application to receive email-bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ] + "networkUtilization": { + "description": "Target scaling by network usage.", + "$ref": "NetworkUtilization" }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "items": { - "$ref": "ErrorHandler" - }, - "type": "array" + "maxConcurrentRequests": { + "format": "int32", + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", + "type": "integer" }, - "defaultExpiration": { + "coolDownPeriod": { "format": "google-duration", - "description": "Duration that static files should be cached by web proxies and browsers. Only applicable if the corresponding StaticFilesHandler (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#staticfileshandler) does not specify its own expiration time.Only returned in GET requests if view=FULL is set.", + "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.", "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.", - "items": { - "$ref": "Library" - }, - "type": "array" - }, - "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.", + "maxPendingLatency": { + "format": "google-duration", + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", "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." + "cpuUtilization": { + "description": "Target scaling by CPU usage.", + "$ref": "CpuUtilization" }, - "runtime": { - "description": "Desired runtime. Example: python27.", - "type": "string" + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." }, - "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-\".", + "minPendingLatency": { + "format": "google-duration", + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", "type": "string" }, - "createdBy": { - "description": "Email address of the user who created this version.@OutputOnly", - "type": "string" + "maxIdleInstances": { + "format": "int32", + "description": "Maximum number of idle instances that should be maintained for this version.", + "type": "integer" }, - "envVariables": { - "additionalProperties": { - "type": "string" - }, - "description": "Environment variables available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object" + "requestUtilization": { + "description": "Target scaling by request utilization.", + "$ref": "RequestUtilization" }, - "livenessCheck": { - "description": "Configures liveness health checking for VM instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", - "$ref": "LivenessCheck" + "standardSchedulerSettings": { + "$ref": "StandardSchedulerSettings", + "description": "Scheduler settings for standard environment." }, - "network": { - "$ref": "Network", - "description": "Extra network settings. Only applicable for VM runtimes." + "minIdleInstances": { + "format": "int32", + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", + "type": "integer" }, - "betaSettings": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata settings that are supplied to this version to enable beta runtime features.", - "type": "object" + "maxTotalInstances": { + "format": "int32", + "description": "Maximum number of instances that should be started to handle requests.", + "type": "integer" + } + }, + "id": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "type": "object" + }, + "ZipInfo": { + "description": "The zip file information for a zip deployment.", + "type": "object", + "properties": { + "filesCount": { + "format": "int32", + "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.", + "type": "integer" }, - "env": { - "description": "App Engine execution environment for this version.Defaults to standard.", + "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" - }, - "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.", + } + }, + "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": { + "visibleDomainMappings": { + "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly", "items": { - "$ref": "UrlMap" + "type": "string" }, "type": "array" }, - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." - }, - "diskUsageBytes": { - "format": "int64", - "description": "Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk.@OutputOnly", + "expireTime": { + "format": "google-datetime", + "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", "type": "string" }, - "healthCheck": { - "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.", - "$ref": "HealthCheck" - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "readinessCheck": { - "$ref": "ReadinessCheck", - "description": "Configures readiness health checking for VM instances. Unhealthy instances are not put into the backend traffic rotation.Only returned in GET requests if view=FULL is set." - }, - "manualScaling": { - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "$ref": "ManualScaling" - }, "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@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." + "domainMappingsCount": { + "format": "int32", + "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", + "type": "integer" }, - "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." + "domainNames": { + "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", + "id": { + "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", "type": "string" }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "type": "string" }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", + "certificateRawData": { + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", + "$ref": "CertificateRawData" + } + }, + "id": "AuthorizedCertificate" + }, + "ResourceRecord": { + "description": "A DNS resource record.", + "type": "object", + "properties": { + "rrdata": { + "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", "type": "string" }, - "servingStatus": { + "name": { + "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "type": "string" + }, + "type": { "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" + "A", + "AAAA", + "CNAME" ], - "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.", + "description": "Resource record type. Example: AAAA.", "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." + "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." ] - }, - "deployment": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." - }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", - "type": "string" } }, - "id": "Version", - "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object" + "id": "ResourceRecord" }, - "RepairApplicationRequest": { - "description": "Request message for 'Applications.RepairApplication'.", + "Library": { + "description": "Third-party Python runtime library that is required by the application.", "type": "object", - "properties": {}, - "id": "RepairApplicationRequest" - }, - "BuildInfo": { "properties": { - "cloudBuildId": { - "description": "The Google Cloud Container Builder build id. Example: \"f966068f-08b2-42c8-bdfe-74137dff2bf9\"", + "name": { + "description": "Name of the library. Example: \"django\".", + "type": "string" + }, + "version": { + "description": "Version of the library to select, or \"latest\".", "type": "string" } }, - "id": "BuildInfo", - "description": "Google Cloud Container Builder build information.", - "type": "object" + "id": "Library" }, - "CertificateRawData": { - "description": "An SSL certificate obtained from a certificate authority.", + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", "type": "object", "properties": { - "privateKey": { - "description": "Unencrypted PEM encoded RSA private key. This field is set once on certificate creation and then encrypted. The key size must be 2048 bits or fewer. Must include the header and footer. Example: \u003cpre\u003e -----BEGIN RSA PRIVATE KEY----- \u003cunencrypted_key_value\u003e -----END RSA PRIVATE KEY----- \u003c/pre\u003e @InputOnly", - "type": "string" + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" }, - "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", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" } }, - "id": "CertificateRawData" + "id": "ListLocationsResponse" }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "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": { - "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" - }, - "sha1Sum": { - "description": "The SHA1 hash of the file, in hex.", + "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": "FileInfo" + "id": "ContainerInfo" }, - "ScriptHandler": { + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "type": "object", "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", - "type": "string" + "targetRequestCountPerSecond": { + "format": "int32", + "description": "Target requests per second.", + "type": "integer" + }, + "targetConcurrentRequests": { + "format": "int32", + "description": "Target number of concurrent requests.", + "type": "integer" } }, - "id": "ScriptHandler", - "description": "Executes a script to handle the request that matches the URL pattern.", - "type": "object" + "id": "RequestUtilization" }, - "OperationMetadataExperimental": { - "description": "Metadata for the given google.longrunning.Operation.", + "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": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "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" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "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" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "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": { + "$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" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@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.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" + "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" } }, - "id": "OperationMetadataExperimental" + "id": "UrlMap" }, - "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.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": { - "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" }, "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": "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.", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", "type": "object", "properties": { - "allocations": { + "response": { "additionalProperties": { - "format": "double", - "type": "number" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "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.", + "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" }, - "shardBy": { + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "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" + }, + "ApiConfigHandler": { + "properties": { + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "login": { "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. 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": [ - "UNSPECIFIED", - "COOKIE", - "IP", - "RANDOM" + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" ], - "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": "Level of login required to access this resource. Defaults to optional.", + "type": "string" + }, + "url": { + "description": "URL to serve the endpoint at.", "type": "string" + }, + "securityLevel": { + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "description": "Security (HTTPS) enforcement for this URL.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ] + }, + "authFailAction": { + "description": "Action to take when users access resources that require authentication. Defaults to redirect.", + "type": "string", + "enumDescriptions": [ + "Not specified. AUTH_FAIL_ACTION_REDIRECT is assumed.", + "Redirects user to \"accounts.google.com\". The user is redirected back to the application URL after signing in or creating an account.", + "Rejects request with a 401 HTTP status code and an error message." + ], + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ] } }, - "id": "TrafficSplit" + "id": "ApiConfigHandler", + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "type": "object" }, - "OperationMetadataV1Beta": { + "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": { - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", "type": "string" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", + "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" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "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" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "expiration": { + "format": "google-duration", + "description": "Time a static file served by this handler should be cached by web proxies and browsers.", "type": "string" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static 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" + } + }, + "id": "StaticFilesHandler" + }, + "BasicScaling": { + "properties": { + "idleTimeout": { + "format": "google-duration", + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", "type": "string" + }, + "maxInstances": { + "format": "int32", + "description": "Maximum number of instances to create for this version.", + "type": "integer" } }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", + "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" }, - "ListServicesResponse": { + "DiskUtilization": { "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" + "targetWriteOpsPerSecond": { + "format": "int32", + "description": "Target ops written per second.", + "type": "integer" }, - "services": { - "description": "The services belonging to the requested application.", - "items": { - "$ref": "Service" - }, - "type": "array" + "targetWriteBytesPerSecond": { + "format": "int32", + "description": "Target bytes written per second.", + "type": "integer" + }, + "targetReadOpsPerSecond": { + "format": "int32", + "description": "Target ops read per seconds.", + "type": "integer" + }, + "targetReadBytesPerSecond": { + "format": "int32", + "description": "Target bytes read per second.", + "type": "integer" } }, - "id": "ListServicesResponse", - "description": "Response message for Services.ListServices.", + "id": "DiskUtilization", + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", "type": "object" }, - "ListIngressRulesResponse": { - "description": "Response message for Firewall.ListIngressRules.", + "CpuUtilization": { + "description": "Target scaling by CPU usage.", "type": "object", "properties": { - "ingressRules": { - "description": "The ingress FirewallRules for this application.", + "aggregationWindowLength": { + "format": "google-duration", + "description": "Period of time over which CPU utilization is calculated.", + "type": "string" + }, + "targetUtilization": { + "format": "double", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "type": "number" + } + }, + "id": "CpuUtilization" + }, + "Status": { + "properties": { + "details": { + "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", "items": { - "$ref": "FirewallRule" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, "type": "array" }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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": "ListIngressRulesResponse" + "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" }, - "Resources": { - "description": "Machine resources for a version.", + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", "type": "object", "properties": { - "volumes": { - "description": "User specified volumes.", - "items": { - "$ref": "Volume" - }, - "type": "array" + "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" }, - "diskGb": { - "format": "double", - "description": "Disk size (GB) needed.", - "type": "number" + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", + "type": "string" }, - "memoryGb": { - "format": "double", - "description": "Memory (GB) needed.", - "type": "number" + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "type": "string" }, - "cpu": { - "format": "double", - "description": "Number of CPU cores needed.", - "type": "number" + "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": "Resources" + "id": "IdentityAwareProxy" }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", + "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": { - "files": { - "additionalProperties": { - "$ref": "FileInfo" - }, - "description": "Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call.", - "type": "object" - }, - "zip": { - "$ref": "ZipInfo", - "description": "The zip file for this deployment, if this is a zip deployment." - }, - "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." - }, - "build": { - "description": "Google Cloud Container Builder build information.", - "$ref": "BuildInfo" + "instances": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "Deployment" + "id": "ManualScaling" }, - "BatchUpdateIngressRulesResponse": { - "description": "Response message for Firewall.UpdateAllIngressRules.", + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", "type": "object", "properties": { - "ingressRules": { - "description": "The full list of ingress FirewallRules for this application.", - "items": { - "$ref": "FirewallRule" - }, - "type": "array" + "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": "BatchUpdateIngressRulesResponse" + "id": "LocationMetadata" }, - "Volume": { - "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "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": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", "type": "string" }, - "sizeGb": { - "format": "double", - "description": "Volume size in gigabytes.", - "type": "number" - }, "name": { - "description": "Unique name for the volume.", + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", "type": "string" + }, + "split": { + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service.", + "$ref": "TrafficSplit" } }, - "id": "Volume" + "id": "Service" }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "description": "The standard List next-page token.", "type": "string" }, - "instances": { - "description": "The instances belonging to the requested version.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "Instance" + "$ref": "Operation" }, "type": "array" } }, - "id": "ListInstancesResponse" + "id": "ListOperationsResponse" }, - "ListDomainMappingsResponse": { + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", "properties": { - "domainMappings": { - "description": "The domain mappings for the application.", - "items": { - "$ref": "DomainMapping" - }, - "type": "array" + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", "type": "string" - } - }, - "id": "ListDomainMappingsResponse", - "description": "Response message for DomainMappings.ListDomainMappings.", - "type": "object" - }, - "OperationMetadataV1Alpha": { - "properties": { + }, "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", "type": "string" }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "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", + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", - "type": "string" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", + "description": "Timestamp that this operation completed.@OutputOnly", "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" } }, - "id": "OperationMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "OperationMetadata" }, - "UrlDispatchRule": { - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object", + "FirewallRule": { "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" + "priority": { + "format": "int32", + "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.", + "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.", + "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" }, - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - } - }, - "id": "UrlDispatchRule" - }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "description": { + "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", "type": "string" }, - "versions": { - "description": "The versions belonging to the requested service.", - "items": { - "$ref": "Version" - }, - "type": "array" - } - }, - "id": "ListVersionsResponse" - }, - "ListAuthorizedDomainsResponse": { - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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" - }, - "domains": { - "description": "The authorized domains belonging to the user.", - "items": { - "$ref": "AuthorizedDomain" - }, - "type": "array" } }, - "id": "ListAuthorizedDomainsResponse" + "id": "FirewallRule", + "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", + "type": "object" }, - "DomainMapping": { - "description": "A domain serving an App Engine application.", - "type": "object", - "properties": { - "sslSettings": { - "$ref": "SslSettings", - "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." - }, - "name": { - "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", - "type": "string" - }, - "resourceRecords": { - "description": "The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly", + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "type": "object", + "properties": { + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", "items": { - "$ref": "ResourceRecord" + "$ref": "AuthorizedCertificate" }, "type": "array" }, - "id": { - "description": "Relative name of the domain serving the application. Example: example.com.", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" } }, - "id": "DomainMapping" + "id": "ListAuthorizedCertificatesResponse" }, - "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" + "FeatureSettings": { + "properties": { + "splitHealthChecks": { + "description": "Boolean value indicating if split health checks should be used instead of the legacy health checks. At an app.yaml level, this means defaulting to 'readiness_check' and 'liveness_check' values instead of 'health_check' ones. Once the legacy 'health_check' behavior is deprecated, and this value is always true, this setting can be removed.", + "type": "boolean" + } + }, + "id": "FeatureSettings", + "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", + "type": "object" }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object", + "ErrorHandler": { "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" + }, + "errorCode": { + "description": "Error condition this handler applies to.", + "type": "string", + "enumDescriptions": [ + "Not specified. ERROR_CODE_DEFAULT is assumed.", + "All other error types.", + "Application has exceeded a resource quota.", + "Client blocked by the application's Denial of Service protection configuration.", + "Deadline reached before the application responds." + ], + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ] + }, + "staticFile": { + "description": "Static file content to be served for this error.", "type": "string" } }, - "id": "ApiEndpointHandler" + "id": "ErrorHandler", + "description": "Custom static error page to be served when an error occurs.", + "type": "object" }, - "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "requestUtilization": { - "description": "Target scaling by request utilization.", - "$ref": "RequestUtilization" - }, - "maxIdleInstances": { - "format": "int32", - "description": "Maximum number of idle instances that should be maintained for this version.", - "type": "integer" - }, - "standardSchedulerSettings": { - "$ref": "StandardSchedulerSettings", - "description": "Scheduler settings for standard environment." - }, - "minIdleInstances": { - "format": "int32", - "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", - "type": "integer" - }, - "maxTotalInstances": { - "format": "int32", - "description": "Maximum number of instances that should be started to handle requests.", - "type": "integer" - }, - "minTotalInstances": { - "format": "int32", - "description": "Minimum number of instances that should be maintained for this version.", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "coolDownPeriod": { - "format": "google-duration", - "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.", + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", "type": "string" }, - "maxConcurrentRequests": { - "format": "int32", - "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", - "type": "integer" + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" }, - "maxPendingLatency": { - "format": "google-duration", - "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "cpuUtilization": { - "description": "Target scaling by CPU usage.", - "$ref": "CpuUtilization" + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "type": "string" }, - "diskUtilization": { - "description": "Target scaling by disk usage.", - "$ref": "DiskUtilization" + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "type": "string" }, - "minPendingLatency": { - "format": "google-duration", - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", "type": "string" } }, - "id": "AutomaticScaling" + "id": "OperationMetadataV1" }, - "ZipInfo": { - "description": "The zip file information for a zip deployment.", + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", "type": "object", "properties": { - "filesCount": { - "format": "int32", - "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.", - "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'.", + "certificateId": { + "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", "type": "string" } }, - "id": "ZipInfo" + "id": "SslSettings" }, - "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", + "Application": { "properties": { - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", - "type": "string" + "servingStatus": { + "enum": [ + "UNSPECIFIED", + "SERVING", + "USER_DISABLED", + "SYSTEM_DISABLED" + ], + "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." + ] }, - "certificateRawData": { - "$ref": "CertificateRawData", - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." + "defaultHostname": { + "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", + "type": "string" }, - "visibleDomainMappings": { - "description": "The full paths to user visible Domain Mapping resources that have this certificate mapped. Example: apps/myapp/domainMappings/example.com.This may not represent the full list of mapped domain mappings if the user does not have VIEWER permissions on all of the applications that have this certificate mapped. See domain_mappings_count for a complete count.Only returned by GET requests when specifically requested by the view=FULL option.@OutputOnly", - "items": { - "type": "string" - }, - "type": "array" + "featureSettings": { + "description": "The feature specific settings to be used in the application.", + "$ref": "FeatureSettings" }, - "expireTime": { - "format": "google-datetime", - "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", + "authDomain": { + "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", "type": "string" }, - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "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" }, - "domainMappingsCount": { - "format": "int32", - "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 requests when specifically requested by the view=FULL option.@OutputOnly", - "type": "integer" + "defaultBucket": { + "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", + "type": "string" }, - "domainNames": { - "description": "Topmost applicable domains of this certificate. This certificate applies to these domains and their subdomains. Example: example.com.@OutputOnly", + "dispatchRules": { + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. Up to 20 dispatch rules can be supported.@OutputOnly", "items": { - "type": "string" + "$ref": "UrlDispatchRule" }, "type": "array" }, - "id": { - "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", + "gcrDomain": { + "description": "The Google Container Registry domain used for storing managed build docker images for this application.", "type": "string" - } - }, - "id": "AuthorizedCertificate" - }, - "ResourceRecord": { - "description": "A DNS resource record.", - "type": "object", - "properties": { + }, "name": { - "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", "type": "string" }, - "type": { - "enumDescriptions": [ - "An A resource record. Data is an IPv4 address.", - "An AAAA resource record. Data is an IPv6 address.", - "A CNAME resource record. Data is a domain name to be aliased." - ], - "enum": [ - "A", - "AAAA", - "CNAME" - ], - "description": "Resource record type. Example: AAAA.", + "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" }, - "rrdata": { - "description": "Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", - "type": "string" - } - }, - "id": "ResourceRecord" - }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", - "type": "object", - "properties": { - "version": { - "description": "Version of the library to select, or \"latest\".", + "defaultCookieExpiration": { + "format": "google-duration", + "description": "Cookie expiration policy for this application.", "type": "string" }, - "name": { - "description": "Name of the library. Example: \"django\".", + "locationId": { + "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", "type": "string" } }, - "id": "Library" + "id": "Application", + "description": "An Application resource contains the top-level configuration of an App Engine application. Next tag: 19", + "type": "object" }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", + "Network": { + "description": "Extra network settings. Only applicable for VM runtimes.", "type": "object", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", "type": "string" }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", + "instanceTag": { + "description": "Tag to apply to the VM instance during creation.", + "type": "string" + }, + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", "items": { - "$ref": "Location" + "type": "string" }, "type": "array" + }, + "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": "ListLocationsResponse" + "id": "Network" }, - "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.", + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", "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\"", + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" - } - }, - "id": "ContainerInfo" - }, - "RequestUtilization": { - "properties": { - "targetRequestCountPerSecond": { + }, + "qps": { + "format": "float", + "description": "Average queries per second (QPS) over the last minute.@OutputOnly", + "type": "number" + }, + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "name": { + "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "type": "string" + }, + "averageLatency": { "format": "int32", - "description": "Target requests per second.", + "description": "Average latency (ms) over the last minute.@OutputOnly", "type": "integer" }, - "targetConcurrentRequests": { + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "type": "string" + }, + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, + "memoryUsage": { + "format": "int64", + "description": "Total memory in use (bytes).@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" + }, + "errors": { "format": "int32", - "description": "Target number of concurrent requests.", + "description": "Number of errors since this instance was started.@OutputOnly", "type": "integer" - } - }, - "id": "RequestUtilization", - "description": "Target scaling by request utilization. Only applicable for VM runtimes.", - "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.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": { - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", + }, + "availability": { + "enumDescriptions": [ + "", + "", + "" + ], + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "description": "Availability of the instance.@OutputOnly", "type": "string" }, - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "startTime": { + "format": "google-datetime", + "description": "Time that this instance was started.@OutputOnly", + "type": "string" + }, + "vmDebugEnabled": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" + }, + "requests": { + "format": "int32", + "description": "Number of requests since this instance was started.@OutputOnly", + "type": "integer" + }, + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", "type": "string" } }, - "id": "EndpointsApiService" + "id": "Instance" }, - "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.", + "LivenessCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", "type": "object", "properties": { - "securityLevel": { - "description": "Security (HTTPS) enforcement for this URL.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", - "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", - "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", - "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." - ], - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, - "authFailAction": { - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string", - "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" - ] + "checkInterval": { + "format": "google-duration", + "description": "Interval between health checks.", + "type": "string" }, - "script": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" + "failureThreshold": { + "format": "uint32", + "description": "Number of consecutive failed checks required before considering the VM unhealthy.", + "type": "integer" }, - "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.", + "timeout": { + "format": "google-duration", + "description": "Time before the check is considered failed.", "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.", + "initialDelay": { + "format": "google-duration", + "description": "The initial delay before starting to execute the checks.", "type": "string" }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" + "path": { + "description": "The request path.", + "type": "string" }, - "staticFiles": { - "$ref": "StaticFilesHandler", - "description": "Returns the contents of a file, such as an image, as the response." + "successThreshold": { + "format": "uint32", + "description": "Number of consecutive successful checks required before considering the VM healthy.", + "type": "integer" }, - "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.", + "host": { + "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", "type": "string" } }, - "id": "UrlMap" + "id": "LivenessCheck" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", + "BatchUpdateIngressRulesRequest": { + "description": "Request message for Firewall.BatchUpdateIngressRules.", "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": { + "ingressRules": { + "description": "A list of FirewallRules to replace the existing set.", + "items": { + "$ref": "FirewallRule" + }, + "type": "array" + } + }, + "id": "BatchUpdateIngressRulesRequest" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "type": "object", + "properties": { + "labels": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "type": "string" }, - "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": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", "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.", + "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" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, "metadata": { - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - } + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" } }, - "id": "Operation" + "id": "Location" }, - "ApiConfigHandler": { + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "type": "object", "properties": { - "script": { - "description": "Path to the script from the application root directory.", + "targetReceivedPacketsPerSecond": { + "format": "int32", + "description": "Target packets received per second.", + "type": "integer" + }, + "targetSentBytesPerSecond": { + "format": "int32", + "description": "Target bytes sent per second.", + "type": "integer" + }, + "targetReceivedBytesPerSecond": { + "format": "int32", + "description": "Target bytes received per second.", + "type": "integer" + }, + "targetSentPacketsPerSecond": { + "format": "int32", + "description": "Target packets sent per second.", + "type": "integer" + } + }, + "id": "NetworkUtilization" + }, + "HealthCheck": { + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances. Only applicable for instances in App Engine flexible environment.", + "type": "object", + "properties": { + "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" }, - "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" - ] + "restartThreshold": { + "format": "uint32", + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "type": "integer" }, - "url": { - "description": "URL to serve the endpoint at.", + "healthyThreshold": { + "format": "uint32", + "description": "Number of consecutive successful health checks required before receiving traffic.", + "type": "integer" + }, + "checkInterval": { + "format": "google-duration", + "description": "Interval between health checks.", "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" - ] + "timeout": { + "format": "google-duration", + "description": "Time before the health check is considered failed.", + "type": "string" }, - "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" - ] + "unhealthyThreshold": { + "format": "uint32", + "description": "Number of consecutive failed health checks required before removing traffic.", + "type": "integer" } }, - "id": "ApiConfigHandler", - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object" + "id": "HealthCheck" }, - "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.", + "ReadinessCheck": { + "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", "type": "object", "properties": { - "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.", + "checkInterval": { + "format": "google-duration", + "description": "Interval between health checks.", "type": "string" }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" + "failureThreshold": { + "format": "uint32", + "description": "Number of consecutive failed checks required before removing traffic.", + "type": "integer" }, - "expiration": { + "timeout": { "format": "google-duration", - "description": "Time a static file served by this handler should be cached by web proxies and browsers.", + "description": "Time before the check is considered failed.", "type": "string" }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "httpHeaders": { - "additionalProperties": { - "type": "string" - }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" - }, - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "appStartTimeout": { + "format": "google-duration", + "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.", "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.", + "description": "The request path.", + "type": "string" + }, + "host": { + "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", "type": "string" + }, + "successThreshold": { + "format": "uint32", + "description": "Number of consecutive successful checks required before receiving traffic.", + "type": "integer" } }, - "id": "StaticFilesHandler" + "id": "ReadinessCheck" }, - "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.", + "StandardSchedulerSettings": { + "description": "Scheduler settings for standard environment.", "type": "object", "properties": { + "targetCpuUtilization": { + "format": "double", + "description": "Target CPU utilization ratio to maintain when scaling.", + "type": "number" + }, + "targetThroughputUtilization": { + "format": "double", + "description": "Target throughput utilization ratio to maintain when scaling", + "type": "number" + }, "maxInstances": { "format": "int32", - "description": "Maximum number of instances to create for this version.", + "description": "Maximum number of instances for an app version. Set to a non-positive value (0 by convention) to disable max_instances configuration.", "type": "integer" }, - "idleTimeout": { - "format": "google-duration", - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "minInstances": { + "format": "int32", + "description": "Minimum number of instances for an app version. Set to a non-positive value (0 by convention) to disable min_instances configuration.", + "type": "integer" + } + }, + "id": "StandardSchedulerSettings" + }, + "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": "BasicScaling" + "id": "DebugInstanceRequest", + "description": "Request message for Instances.DebugInstance.", + "type": "object" }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "targetReadOpsPerSecond": { - "format": "int32", - "description": "Target ops read per seconds.", - "type": "integer" + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" }, - "targetReadBytesPerSecond": { - "format": "int32", - "description": "Target bytes read per second.", - "type": "integer" + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" }, - "targetWriteOpsPerSecond": { - "format": "int32", - "description": "Target ops written per second.", - "type": "integer" + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", + "type": "string" }, - "targetWriteBytesPerSecond": { - "format": "int32", - "description": "Target bytes written per second.", - "type": "integer" + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "Timestamp that this operation completed.@OutputOnly", + "type": "string" } }, - "id": "DiskUtilization" + "id": "OperationMetadataV1Beta5" } }, + "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": "v1beta", "baseUrl": "https://appengine.googleapis.com/", "auth": { "oauth2": { "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, "https://www.googleapis.com/auth/appengine.admin": { "description": "View and manage your applications deployed on Google App Engine" }, "https://www.googleapis.com/auth/cloud-platform.read-only": { "description": "View your data across Google Cloud Platform services" - }, - "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", - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "revision": "20170626", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1beta" + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "servicePath": "" } diff --git a/DiscoveryJson/appengine_v1beta4.json b/DiscoveryJson/appengine_v1beta4.json index e71667e55f..342191b723 100644 --- a/DiscoveryJson/appengine_v1beta4.json +++ b/DiscoveryJson/appengine_v1beta4.json @@ -1,35 +1,41 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" + } + } + } + }, + "kind": "discovery#restDescription", + "servicePath": "", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "rootUrl": "https://appengine.googleapis.com/", + "basePath": "", "ownerDomain": "google.com", "name": "appengine", "batchPath": "batch", "id": "appengine:v1beta4", "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20170626", + "revision": "20170630", "title": "Google App Engine Admin API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "apps": { "methods": { - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps", - "id": "appengine.apps.create", - "path": "v1beta4/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/python/console/).", + "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" - } - }, - "patch": { + }, "response": { "$ref": "Operation" }, @@ -37,80 +43,98 @@ "appsId" ], "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "appsId": { + "location": "path", "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", "type": "string", - "required": true, - "location": "path" + "required": true }, "mask": { - "location": "query", "format": "google-fieldmask", "description": "Standard field mask for the set of fields to be updated.", - "type": "string" + "type": "string", + "location": "query" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta4/apps/{appsId}", "id": "appengine.apps.patch", - "path": "v1beta4/apps/{appsId}", - "request": { - "$ref": "Application" - }, - "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps#Application.FIELDS.default_cookie_expiration)" + "path": "v1beta4/apps/{appsId}" }, "get": { "httpMethod": "GET", + "parameterOrder": [ + "appsId" + ], "response": { "$ref": "Application" }, - "parameterOrder": [ - "appsId" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], "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.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta4/apps/{appsId}", "path": "v1beta4/apps/{appsId}", "id": "appengine.apps.get", "description": "Gets information about an application." + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } } }, "resources": { "locations": { "methods": { "get": { - "description": "Get information about a location.", - "httpMethod": "GET", "response": { "$ref": "Location" }, + "httpMethod": "GET", "parameterOrder": [ "appsId", "locationsId" ], + "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.", "type": "string", - "required": true + "required": true, + "location": "path" }, "locationsId": { "location": "path", @@ -119,212 +143,95 @@ "required": true } }, - "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}", - "id": "appengine.apps.locations.get" + "description": "Get information about a location." }, "list": { + "id": "appengine.apps.locations.list", + "path": "v1beta4/apps/{appsId}/locations", "description": "Lists information about the supported locations for this service.", + "response": { + "$ref": "ListLocationsResponse" + }, "parameterOrder": [ "appsId" ], "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, "scopes": [ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", - "type": "string", - "required": true - }, "pageSize": { - "location": "query", "format": "int32", "description": "The standard list page size.", - "type": "integer" - } - }, - "flatPath": "v1beta4/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "path": "v1beta4/apps/{appsId}/locations" - } - } - }, - "modules": { - "methods": { - "patch": { - "description": "Updates the configuration of the specified module.", - "request": { - "$ref": "Module" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "appsId", - "modulesId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", - "type": "string", - "required": true, - "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": "integer", + "location": "query" }, - "mask": { + "filter": { "location": "query", - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", + "description": "The standard list filter.", "type": "string" }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.patch" - }, - "list": { - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "response": { - "$ref": "ListModulesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { "pageToken": { "location": "query", - "description": "Continuation token for fetching the next page of results.", + "description": "The standard list page token.", "type": "string" }, "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "type": "string", "required": true, "location": "path" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer" - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules", - "id": "appengine.apps.modules.list", - "path": "v1beta4/apps/{appsId}/modules", - "description": "Lists all the modules in the application." - }, - "get": { - "response": { - "$ref": "Module" - }, - "parameterOrder": [ - "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": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", - "type": "string", - "required": true - }, - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true } }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.get", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}", - "description": "Gets the current configuration of the specified module." - }, - "delete": { - "description": "Deletes the specified module and all enclosed versions.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", - "type": "string", - "required": true, - "location": "path" - }, - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.delete", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}" + "flatPath": "v1beta4/apps/{appsId}/locations" } - }, + } + }, + "modules": { "resources": { "versions": { "methods": { - "patch": { + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "modulesId" + ], + "httpMethod": "POST", + "parameters": { + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "id": "appengine.apps.modules.versions.create", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "description": "Deploys code and resource files to a new version.", + "request": { + "$ref": "Version" + } + }, + "delete": { + "description": "Deletes an existing version.", "response": { "$ref": "Operation" }, @@ -333,7 +240,48 @@ "modulesId", "versionsId" ], + "httpMethod": "DELETE", + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "type": "string", + "required": true, + "location": "path" + }, + "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "modulesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "id": "appengine.apps.modules.versions.delete", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}" + }, + "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/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.", "httpMethod": "PATCH", + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -357,19 +305,15 @@ "required": true }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.patch", "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "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/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." + "id": "appengine.apps.modules.versions.patch" }, "list": { "description": "Lists the versions of a module.", @@ -388,10 +332,10 @@ "type": "string" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", "type": "string", - "required": true, - "location": "path" + "required": true }, "pageSize": { "format": "int32", @@ -425,6 +369,11 @@ "id": "appengine.apps.modules.versions.list" }, "get": { + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "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" }, @@ -433,152 +382,77 @@ "modulesId", "versionsId" ], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", "type": "string", - "required": true + "required": true, + "location": "path" }, "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" + ] }, "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "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}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.get", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "description": "Gets the specified Version resource. By default, only a BASIC_VIEW will be returned. Specify the FULL_VIEW parameter to get the full resource." - }, - "create": { - "description": "Deploys code and resource files to a new version.", - "request": { - "$ref": "Version" - }, - "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.", - "type": "string", - "required": true }, "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", - "id": "appengine.apps.modules.versions.create", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions" - }, - "delete": { - "description": "Deletes an existing version.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId", - "versionsId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", - "type": "string", - "required": true - }, - "versionsId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true - }, - "modulesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" } - }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.delete", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}" + } } }, "resources": { "instances": { "methods": { - "debug": { - "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": { + "response": { + "$ref": "ListInstancesResponse" }, - "httpMethod": "POST", + "httpMethod": "GET", "parameterOrder": [ "appsId", "modulesId", - "versionsId", - "instancesId" + "versionsId" + ], + "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": "Operation" - }, "parameters": { - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "pageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string", - "required": true + "location": "query" }, "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", "type": "string", - "required": true, - "location": "path" + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" }, "versionsId": { "location": "path", @@ -587,36 +461,40 @@ "required": true }, "modulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "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)." }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, + "get": { + "description": "Gets instance information.", "parameterOrder": [ "appsId", "modulesId", "versionsId", "instancesId" ], + "httpMethod": "GET", + "response": { + "$ref": "Instance" + }, "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": { "instancesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "appsId": { "location": "path", @@ -625,78 +503,73 @@ "required": true }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "modulesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "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." + "id": "appengine.apps.modules.versions.instances.get", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}" }, - "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).", + "debug": { + "id": "appengine.apps.modules.versions.instances.debug", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}: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": "ListInstancesResponse" + "$ref": "Operation" }, "parameterOrder": [ "appsId", "modulesId", - "versionsId" + "versionsId", + "instancesId" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { - "pageToken": { - "description": "Continuation token for fetching the next page of results.", + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "location": "query" + "required": true, + "location": "path" }, "appsId": { - "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.", "type": "string", "required": true, "location": "path" }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer" - }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "modulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "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/{instancesId}:debug" }, - "get": { - "description": "Gets instance information.", + "delete": { "response": { - "$ref": "Instance" + "$ref": "Operation" }, "parameterOrder": [ "appsId", @@ -704,18 +577,13 @@ "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": "DELETE", "parameters": { "instancesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true }, "appsId": { "location": "path", @@ -730,44 +598,91 @@ "location": "path" }, "modulesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true, - "location": "path" + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.modules.versions.instances.get", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}" + "id": "appengine.apps.modules.versions.instances.delete", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", + "description": "Stops a running instance." } } } } } - } - }, - "operations": { + }, "methods": { - "get": { - "path": "v1beta4/apps/{appsId}/operations/{operationsId}", - "id": "appengine.apps.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "httpMethod": "GET", + "delete": { + "httpMethod": "DELETE", "response": { "$ref": "Operation" }, "parameterOrder": [ "appsId", - "operationsId" + "modulesId" ], "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/modules/default.", "type": "string", "required": true }, - "operationsId": { + "modulesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "id": "appengine.apps.modules.delete", + "description": "Deletes the specified module and all enclosed versions." + }, + "patch": { + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "id": "appengine.apps.modules.patch", + "description": "Updates the configuration of the specified module.", + "request": { + "$ref": "Module" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "appsId", + "modulesId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", + "type": "string", + "required": true, + "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" + }, + "mask": { + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", + "type": "string", + "location": "query" + }, + "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, @@ -775,42 +690,36 @@ } }, "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}/operations/{operationsId}" + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}" }, "list": { + "description": "Lists all the modules in the application.", + "httpMethod": "GET", "response": { - "$ref": "ListOperationsResponse" + "$ref": "ListModulesResponse" }, "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "parameters": { + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" + }, "pageToken": { - "description": "The standard list page token.", + "description": "Continuation token for fetching the next page of results.", "type": "string", "location": "query" }, "appsId": { "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", "type": "string", "required": true - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" } }, "scopes": [ @@ -818,37 +727,153 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta4/apps/{appsId}/operations", - "id": "appengine.apps.operations.list", - "path": "v1beta4/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." + "flatPath": "v1beta4/apps/{appsId}/modules", + "path": "v1beta4/apps/{appsId}/modules", + "id": "appengine.apps.modules.list" + }, + "get": { + "description": "Gets the current configuration of the specified module.", + "response": { + "$ref": "Module" + }, + "parameterOrder": [ + "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": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "type": "string", + "required": true, + "location": "path" + }, + "modulesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", + "id": "appengine.apps.modules.get", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}" } } - } - } - } - }, - "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.", - "default": "true", - "type": "boolean", - "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" + }, + "operations": { + "methods": { + "get": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "operationsId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. The name of the operation resource.", + "type": "string", + "required": true + }, + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta4/apps/{appsId}/operations/{operationsId}", + "id": "appengine.apps.operations.get", + "path": "v1beta4/apps/{appsId}/operations/{operationsId}", + "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." + }, + "list": { + "flatPath": "v1beta4/apps/{appsId}/operations", + "id": "appengine.apps.operations.list", + "path": "v1beta4/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" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "type": "string", + "required": true, + "location": "path" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "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" + ] + } + } + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": [ @@ -863,25 +888,25 @@ "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" - ], + ] + }, + "key": { + "description": "API key. 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", - "enumDescriptions": [ - "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": { @@ -889,15 +914,10 @@ "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", - "location": "query" + "type": "string" }, "pp": { "description": "Pretty-print response.", @@ -905,478 +925,381 @@ "type": "boolean", "location": "query" }, - "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" } }, "schemas": { - "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.", + "CpuUtilization": { + "description": "Target scaling by CPU usage.", "type": "object", "properties": { - "staticDirectory": { - "description": "Serves the entire contents of a directory as static files.This attribute is deprecated. You can mimic the behavior of static directories using static files.", - "$ref": "StaticDirectoryHandler" - }, - "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.", + "aggregationWindowLength": { + "format": "google-duration", + "description": "Period of time over which CPU utilization is calculated.", "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": { - "description": "Executes a script to handle the request that matches this URL pattern.", - "$ref": "ScriptHandler" + "targetUtilization": { + "format": "double", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "type": "number" + } + }, + "id": "CpuUtilization" + }, + "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" }, - "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.", + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", "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.", + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", "type": "string" }, - "apiEndpoint": { - "$ref": "ApiEndpointHandler", - "description": "Uses API Endpoints to handle requests." + "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": "UrlMap" + "id": "IdentityAwareProxy" }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "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": { - "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" + "details": { + "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" }, - "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.", + "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" + }, + "TrafficSplit": { + "properties": { + "allocations": { + "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", + "additionalProperties": { + "format": "double", + "type": "number" + } }, - "authFailAction": { - "description": "Action to take when users access resources that require authentication. Defaults to redirect.", - "type": "string", + "shardBy": { "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." + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address." ], "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ] - }, - "script": { - "description": "Path to the script from the application root directory.", + "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" } }, - "id": "ApiConfigHandler" + "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" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", + "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": { - "done": { - "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", - "type": "boolean" - }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" + "instances": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "Operation" + "id": "ManualScaling" }, - "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", + "LocationMetadata": { "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" + "standardEnvironmentAvailable": { + "description": "App Engine Standard Environment is available in the given location.@OutputOnly", + "type": "boolean" }, - "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" + "flexibleEnvironmentAvailable": { + "description": "App Engine Flexible Environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "FileInfo" + "id": "LocationMetadata", + "description": "Metadata for the given google.cloud.location.Location.", + "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.", + "OperationMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "expiration": { - "format": "google-duration", - "description": "Time a static file served by this handler should be cached.", - "type": "string" - }, - "applicationReadable": { - "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", - "type": "boolean" - }, - "httpHeaders": { - "additionalProperties": { + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { "type": "string" }, - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object" + "type": "array" }, - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", "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.", + "user": { + "description": "User who requested this operation.@OutputOnly", "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.", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" + "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": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", + "type": "string" } }, - "id": "StaticFilesHandler" + "id": "OperationMetadataV1Beta" }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", + "ListModulesResponse": { + "description": "Response message for Modules.ListModules.", "type": "object", "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" + }, + "modules": { + "description": "The modules belonging to the requested application.", + "items": { + "$ref": "Module" + }, + "type": "array" } }, - "id": "ScriptHandler" + "id": "ListModulesResponse" }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", "type": "object", "properties": { - "targetReadOpsPerSec": { - "format": "int32", - "description": "Target ops read per second.", - "type": "integer" - }, - "targetReadBytesPerSec": { - "format": "int32", - "description": "Target bytes read per second.", - "type": "integer" + "sourceReferences": { + "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", + "items": { + "$ref": "SourceReference" + }, + "type": "array" }, - "targetWriteOpsPerSec": { - "format": "int32", - "description": "Target ops written per second.", - "type": "integer" + "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" }, - "targetWriteBytesPerSec": { - "format": "int32", - "description": "Target bytes written per second.", - "type": "integer" + "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": "DiskUtilization" + "id": "Deployment" }, - "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.", + "Resources": { + "description": "Machine resources for a version.", "type": "object", "properties": { - "maxInstances": { - "format": "int32", - "description": "Maximum number of instances to create for this version.", - "type": "integer" - }, - "idleTimeout": { - "format": "google-duration", - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "type": "string" + "memoryGb": { + "format": "double", + "description": "Memory (GB) needed.", + "type": "number" + }, + "cpu": { + "format": "double", + "description": "Number of CPU cores needed.", + "type": "number" + }, + "volumes": { + "description": "User specified volumes.", + "items": { + "$ref": "Volume" + }, + "type": "array" + }, + "diskGb": { + "format": "double", + "description": "Disk size (GB) needed.", + "type": "number" } }, - "id": "BasicScaling" + "id": "Resources" }, - "OperationMetadataExperimental": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "Volume": { "properties": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", "type": "string" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" + "sizeGb": { + "format": "double", + "description": "Volume size in gigabytes.", + "type": "number" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", + "name": { + "description": "Unique name for the volume.", "type": "string" } }, - "id": "OperationMetadataExperimental" + "id": "Volume", + "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "type": "object" }, - "CpuUtilization": { - "description": "Target scaling by CPU usage.", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { - "aggregationWindowLength": { - "format": "google-duration", - "description": "Period of time over which CPU utilization is calculated.", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "targetUtilization": { - "format": "double", - "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", - "type": "number" + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" } }, - "id": "CpuUtilization" + "id": "ListOperationsResponse" }, - "IdentityAwareProxy": { - "description": "Identity-Aware Proxy", + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", "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", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", "type": "string" }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", + "endTime": { + "format": "google-datetime", + "description": "Timestamp that this operation completed.@OutputOnly", "type": "string" }, - "oauth2ClientSecretSha256": { - "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@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" + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" } }, - "id": "IdentityAwareProxy" + "id": "OperationMetadata" }, - "Status": { + "ListInstancesResponse": { "properties": { - "details": { - "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "instances": { + "description": "The instances belonging to the requested version.", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "Instance" }, "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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", - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "id": "ListInstancesResponse", + "description": "Response message for Instances.ListInstances.", "type": "object" }, - "TrafficSplit": { - "description": "Traffic routing configuration for versions within a single module. Traffic splits define how traffic directed to the module is assigned to versions.", + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", "type": "object", "properties": { - "allocations": { - "additionalProperties": { - "format": "double", - "type": "number" - }, - "description": "Mapping from version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated cannot be deleted until either the module is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.", - "type": "object" + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" }, - "shardBy": { + "errorCode": { "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." + "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": [ - "UNSPECIFIED", - "COOKIE", - "IP" + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" ], - "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": "Error condition this handler applies to.", "type": "string" - } - }, - "id": "TrafficSplit" - }, - "ManualScaling": { - "properties": { - "instances": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "ManualScaling", - "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "type": "object" - }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", - "type": "object", - "properties": { - "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" + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" } }, - "id": "LocationMetadata" + "id": "ErrorHandler" }, - "OperationMetadataV1Beta": { + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", "properties": { "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": { @@ -1384,11 +1307,6 @@ "description": "Time that this operation completed.@OutputOnly", "type": "string" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" - }, "warning": { "description": "Durable messages that persist on every operation poll. @OutputOnly", "items": { @@ -1396,6 +1314,11 @@ }, "type": "array" }, + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" + }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" @@ -1409,288 +1332,65 @@ "type": "string" } }, - "id": "OperationMetadataV1Beta", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "OperationMetadataV1" }, - "ListModulesResponse": { - "description": "Response message for Modules.ListModules.", - "type": "object", + "OperationMetadataV1Alpha": { "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", "type": "string" }, - "modules": { - "description": "The modules belonging to the requested application.", - "items": { - "$ref": "Module" - }, - "type": "array" - } - }, - "id": "ListModulesResponse" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "properties": { - "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.", + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", "items": { - "$ref": "SourceReference" + "type": "string" }, "type": "array" }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "files": { - "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" - }, - "Resources": { - "properties": { - "memoryGb": { - "format": "double", - "description": "Memory (GB) needed.", - "type": "number" - }, - "cpu": { - "format": "double", - "description": "Number of CPU cores needed.", - "type": "number" - }, - "volumes": { - "description": "User specified volumes.", - "items": { - "$ref": "Volume" - }, - "type": "array" - }, - "diskGb": { - "format": "double", - "description": "Disk size (GB) needed.", - "type": "number" - } - }, - "id": "Resources", - "description": "Machine resources for a version.", - "type": "object" - }, - "Volume": { - "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", - "type": "object", - "properties": { - "sizeGb": { - "format": "double", - "description": "Volume size in gigabytes.", - "type": "number" - }, - "name": { - "description": "Unique name for the volume.", - "type": "string" - }, - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", - "type": "string" - } - }, - "id": "Volume" - }, - "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.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse" - }, - "OperationMetadata": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "insertTime": { - "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@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" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Timestamp that this operation completed.@OutputOnly", + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", "type": "string" }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "instances": { - "description": "The instances belonging to the requested version.", - "items": { - "$ref": "Instance" - }, - "type": "array" - } - }, - "id": "ListInstancesResponse" - }, - "OperationMetadataV1": { - "properties": { "endTime": { "format": "google-datetime", "description": "Time that this operation completed.@OutputOnly", "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" } }, - "id": "OperationMetadataV1", + "id": "OperationMetadataV1Alpha", "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "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", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ], - "description": "Error condition this handler applies to.", - "type": "string" - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", + "Application": { "properties": { - "warning": { - "description": "Durable messages that persist on every operation poll. @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", "items": { - "type": "string" + "$ref": "UrlDispatchRule" }, "type": "array" }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "defaultHostname": { + "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", "type": "string" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "name": { + "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", "type": "string" }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Alpha" - }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", - "properties": { "iap": { "$ref": "IdentityAwareProxy" }, @@ -1718,28 +1418,13 @@ "defaultBucket": { "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", "type": "string" - }, - "dispatchRules": { - "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a module or version. Rules are order-dependent.@OutputOnly", - "items": { - "$ref": "UrlDispatchRule" - }, - "type": "array" - }, - "defaultHostname": { - "description": "Hostname used to reach the application, as resolved by App Engine.@OutputOnly", - "type": "string" - }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", - "type": "string" } }, - "id": "Application" + "id": "Application", + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "type": "object" }, "Network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "type": "object", "properties": { "instanceTag": { "description": "Tag to apply to the VM instance during creation.", @@ -1757,18 +1442,30 @@ "type": "string" } }, - "id": "Network" + "id": "Network", + "description": "Extra network settings. Only applicable for VM runtimes.", + "type": "object" }, "Instance": { "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", "type": "object", "properties": { - "vmName": { - "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "requests": { + "format": "int32", + "description": "Number of requests since this instance was started.@OutputOnly", + "type": "integer" }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "appEngineRelease": { + "description": "App Engine release this instance is running on.@OutputOnly", + "type": "string" + }, + "startTimestamp": { + "format": "google-datetime", + "description": "Time that this instance was started.@OutputOnly", + "type": "string" + }, + "vmName": { + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" }, "qps": { @@ -1776,14 +1473,18 @@ "description": "Average queries per second (QPS) over the last minute.@OutputOnly", "type": "number" }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "vmId": { + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" }, "vmUnlocked": { "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "boolean" }, + "vmZoneName": { + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "string" + }, "name": { "description": "Full path to the Instance resource in the API. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.@OutputOnly", "type": "string" @@ -1806,9 +1507,10 @@ "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "type": "string" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "errors": { + "format": "uint32", + "description": "Number of errors since this instance was started.@OutputOnly", + "type": "integer" }, "availability": { "enum": [ @@ -1824,31 +1526,14 @@ "" ] }, - "errors": { - "format": "uint32", - "description": "Number of errors since this instance was started.@OutputOnly", - "type": "integer" - }, - "requests": { - "format": "int32", - "description": "Number of requests since this instance was started.@OutputOnly", - "type": "integer" - }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" - }, - "startTimestamp": { - "format": "google-datetime", - "description": "Time that this instance was started.@OutputOnly", + "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" }, "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.", @@ -1863,7 +1548,27 @@ "type": "string" } }, - "id": "UrlDispatchRule" + "id": "UrlDispatchRule", + "description": "Rules to match an HTTP request and dispatch that request to a module.", + "type": "object" + }, + "ListVersionsResponse": { + "properties": { + "versions": { + "description": "The versions belonging to the requested module.", + "items": { + "$ref": "Version" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "id": "ListVersionsResponse", + "description": "Response message for Versions.ListVersions.", + "type": "object" }, "Module": { "description": "A Module resource is a logical component of an application that can share state and communicate in a secure fashion with other modules. For example, an application that handles customer requests might include separate modules to handle tasks such as backend data analysis or API requests from mobile devices. Each module has a collection of versions that define a specific set of code used to implement the functionality of that module.", @@ -1884,34 +1589,16 @@ }, "id": "Module" }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "versions": { - "description": "The versions belonging to the requested module.", - "items": { - "$ref": "Version" - }, - "type": "array" - } - }, - "id": "ListVersionsResponse" - }, "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", + "type": "object", "properties": { "scriptPath": { "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "ApiEndpointHandler", - "description": "Uses Google Cloud Endpoints to handle requests.", - "type": "object" + "id": "ApiEndpointHandler" }, "AutomaticScaling": { "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", @@ -1966,8 +1653,8 @@ "type": "string" }, "cpuUtilization": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." + "description": "Target scaling by CPU usage.", + "$ref": "CpuUtilization" }, "diskUtilization": { "description": "Target scaling by disk usage.", @@ -1980,15 +1667,19 @@ "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": { + "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" + }, "expiration": { "format": "google-duration", "description": "Time a static file served by this handler should be cached.", "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" @@ -1996,50 +1687,46 @@ "description": "HTTP headers to use for all responses from these URLs.", "type": "object" }, + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static directory handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, "directory": { "description": "Path to the directory containing the static files from the application root directory. Everything after the end of the matched URL pattern is appended to static_dir to form the full path to the requested file.", "type": "string" - }, - "mimeType": { - "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension.", - "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" } }, "id": "StaticDirectoryHandler" }, "Location": { - "description": "A resource that represents Google Cloud Platform location.", - "type": "object", "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" + }, "locationId": { "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" }, "metadata": { - "description": "Service-specific metadata. For example the available capacity at the given location.", - "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{\"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" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" } }, - "id": "Location" + "id": "Location", + "description": "A resource that represents Google Cloud Platform location.", + "type": "object" }, "NetworkUtilization": { "description": "Target scaling by network usage. Only applicable for VM runtimes.", @@ -2072,16 +1759,29 @@ "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": { - "healthyThreshold": { + "unhealthyThreshold": { "format": "uint32", - "description": "Number of consecutive successful health checks required before receiving traffic.", + "description": "Number of consecutive failed health checks required before removing traffic.", "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": { "format": "uint32", "description": "Number of consecutive failed health checks required before an instance is restarted.", "type": "integer" }, + "healthyThreshold": { + "format": "uint32", + "description": "Number of consecutive successful health checks required before receiving traffic.", + "type": "integer" + }, "checkInterval": { "format": "google-duration", "description": "Interval between health checks.", @@ -2091,19 +1791,6 @@ "format": "google-duration", "description": "Time before the health check is considered failed.", "type": "string" - }, - "unhealthyThreshold": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before removing traffic.", - "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" } }, "id": "HealthCheck" @@ -2123,13 +1810,13 @@ "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", "type": "object", "properties": { - "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" + }, + "revisionId": { + "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"", + "type": "string" } }, "id": "SourceReference" @@ -2138,6 +1825,10 @@ "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": { "format": "google-datetime", "description": "Timestamp that this operation was created.@OutputOnly", @@ -2155,10 +1846,6 @@ "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" - }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" } }, "id": "OperationMetadataV1Beta5" @@ -2179,58 +1866,25 @@ "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.", "items": { "$ref": "Location" }, "type": "array" - } - }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" - }, - "ContainerInfo": { - "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", - "type": "object", - "properties": { - "image": { - "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + }, + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" } }, - "id": "ContainerInfo" + "id": "ListLocationsResponse" }, "Version": { - "description": "A Version resource is a specific set of source code and configuration files that are deployed into a module.", - "type": "object", "properties": { - "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." - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" - }, - "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.", - "$ref": "ManualScaling" - }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly", - "type": "string" - }, - "apiConfig": { - "$ref": "ApiConfigHandler", - "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set." - }, "vm": { "description": "Whether to deploy this version in a container on a virtual machine.", "type": "boolean" @@ -2240,28 +1894,39 @@ "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", - "enumDescriptions": [ - "Not specified.", - "Currently serving. Instances are created according to the scaling settings of the version.", - "Disabled. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." - ] + "type": "string" }, "deployment": { - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", - "$ref": "Deployment" + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." }, "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.", "items": { "type": "string", @@ -2277,22 +1942,11 @@ "INBOUND_SERVICE_WARMUP" ] }, - "type": "array", - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application to receive email-bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ] + "type": "array" }, "resources": { - "description": "Machine resources for this version. Only applicable for VM runtimes.", - "$ref": "Resources" + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." }, "errorHandlers": { "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", @@ -2313,18 +1967,18 @@ }, "type": "array" }, + "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": { "format": "google-datetime", "description": "Time that this version was created.@OutputOnly", "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": { - "$ref": "BasicScaling", - "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + "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" }, "runtime": { "description": "Desired runtime. Example: python27.", @@ -2346,11 +2000,11 @@ "$ref": "Network" }, "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.", @@ -2368,11 +2022,44 @@ "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" + }, + "healthCheck": { + "description": "Configures health checking for VM instances. Unhealthy instances are stopped and replaced with new instances. Only applicable for VM runtimes.Only returned in GET requests if view=FULL is set.", + "$ref": "HealthCheck" + }, + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" + }, + "manualScaling": { + "$ref": "ManualScaling", + "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + }, + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/modules/default/versions/v1.@OutputOnly", + "type": "string" + }, + "apiConfig": { + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.", + "$ref": "ApiConfigHandler" + } + }, + "id": "Version", + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a module.", + "type": "object" + }, + "ContainerInfo": { + "properties": { + "image": { + "description": "URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: \"gcr.io/my-project/image:tag\" or \"gcr.io/my-project/image@digest\"", + "type": "string" } }, - "id": "Version" + "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": { "description": "Target scaling by request utilization. Only applicable for VM runtimes.", @@ -2390,6 +2077,339 @@ } }, "id": "RequestUtilization" + }, + "UrlMap": { + "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", + "type": "object", + "properties": { + "apiEndpoint": { + "description": "Uses API Endpoints to handle requests.", + "$ref": "ApiEndpointHandler" + }, + "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. 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": { + "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.", + "type": "string" + }, + "script": { + "description": "Executes a script to handle the request that matches this URL pattern.", + "$ref": "ScriptHandler" + }, + "urlRegex": { + "description": "A URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.", + "type": "string" + }, + "login": { + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "description": "Level of login required to access this resource.", + "type": "string", + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the auth_fail_action is taken." + ] + } + }, + "id": "UrlMap" + }, + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "type": "object", + "properties": { + "securityLevel": { + "enumDescriptions": [ + "Not specified.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used, and respond accordingly.", + "Requests for a URL that match this handler that use HTTPS are automatically redirected to the HTTP equivalent URL.", + "Both HTTP and HTTPS requests with URLs that match the handler succeed without redirects. The application can examine the request to determine which protocol was used and respond accordingly.", + "Requests for a URL that match this handler that do not use HTTPS are automatically redirected to the HTTPS URL with the same path. Query parameters are reserved for the redirect." + ], + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ], + "description": "Security (HTTPS) enforcement for this URL.", + "type": "string" + }, + "authFailAction": { + "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": { + "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" + } + }, + "id": "ApiConfigHandler" + }, + "Operation": { + "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 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.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + } + }, + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a network API call.", + "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" + }, + "StaticFilesHandler": { + "properties": { + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "type": "string" + }, + "path": { + "description": "Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.", + "type": "string" + }, + "mimeType": { + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", + "type": "string" + }, + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" + }, + "expiration": { + "format": "google-duration", + "description": "Time a static file served by this handler should be cached.", + "type": "string" + }, + "applicationReadable": { + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.", + "type": "boolean" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + } + }, + "id": "StaticFilesHandler", + "description": "Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them.", + "type": "object" + }, + "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" + }, + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "type": "object", + "properties": { + "targetWriteBytesPerSec": { + "format": "int32", + "description": "Target bytes written per second.", + "type": "integer" + }, + "targetReadOpsPerSec": { + "format": "int32", + "description": "Target ops read per second.", + "type": "integer" + }, + "targetReadBytesPerSec": { + "format": "int32", + "description": "Target bytes read per second.", + "type": "integer" + }, + "targetWriteOpsPerSec": { + "format": "int32", + "description": "Target ops written per second.", + "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": { + "format": "int32", + "description": "Maximum number of instances to create for this version.", + "type": "integer" + }, + "idleTimeout": { + "format": "google-duration", + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "type": "string" + } + }, + "id": "BasicScaling" + }, + "OperationMetadataExperimental": { + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", + "properties": { + "method": { + "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "type": "string" + }, + "insertTime": { + "format": "google-datetime", + "description": "Time that this operation was created.@OutputOnly", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + } + }, + "id": "OperationMetadataExperimental" } }, "icons": { @@ -2398,25 +2418,5 @@ }, "protocol": "rest", "version": "v1beta4", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - } - } - } - }, - "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": "" + "baseUrl": "https://appengine.googleapis.com/" } diff --git a/DiscoveryJson/appengine_v1beta5.json b/DiscoveryJson/appengine_v1beta5.json index 1ff26026cd..f9b5c8bd7c 100644 --- a/DiscoveryJson/appengine_v1beta5.json +++ b/DiscoveryJson/appengine_v1beta5.json @@ -1,11 +1,32 @@ { + "version": "v1beta5", + "baseUrl": "https://appengine.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/appengine.admin": { + "description": "View and manage your applications deployed on Google App Engine" + } + } + } + }, + "kind": "discovery#restDescription", + "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", + "servicePath": "", + "rootUrl": "https://appengine.googleapis.com/", "basePath": "", "ownerDomain": "google.com", "name": "appengine", "batchPath": "batch", - "id": "appengine:v1beta5", + "revision": "20170630", "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "revision": "20170626", + "id": "appengine:v1beta5", "title": "Google App Engine Admin API", "discoveryVersion": "v1", "ownerName": "Google", @@ -13,13 +34,6 @@ "apps": { "methods": { "patch": { - "flatPath": "v1beta5/apps/{appsId}", - "path": "v1beta5/apps/{appsId}", - "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" - }, "httpMethod": "PATCH", "parameterOrder": [ "appsId" @@ -27,6 +41,9 @@ "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "appsId": { "location": "path", @@ -41,52 +58,56 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta5/apps/{appsId}", + "path": "v1beta5/apps/{appsId}", + "id": "appengine.apps.patch", + "request": { + "$ref": "Application" + }, + "description": "Updates the specified Application resource. You can update the following fields:\nauth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.auth_domain)\ndefault_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps#Application.FIELDS.default_cookie_expiration)" }, "get": { - "httpMethod": "GET", - "parameterOrder": [ - "appsId" - ], + "flatPath": "v1beta5/apps/{appsId}", + "id": "appengine.apps.get", + "path": "v1beta5/apps/{appsId}", + "description": "Gets information about an application.", "response": { "$ref": "Application" }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "ensureResourcesExist": { + "description": "Certain resources associated with an application are created on-demand. Controls whether these resources should be created when performing the GET operation. If specified and any resources could not be created, the request will fail with an error code. Additionally, this parameter can cause the request to take longer to complete. Note: This parameter will be deprecated in a future version of the API.", + "type": "boolean", + "location": "query" + }, "appsId": { "location": "path", "description": "Part of `name`. Name of the application to get. Example: apps/myapp.", "type": "string", "required": true - }, - "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" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}", - "path": "v1beta5/apps/{appsId}", - "id": "appengine.apps.get", - "description": "Gets information about an application." + } }, "create": { + "httpMethod": "POST", + "parameterOrder": [], "response": { "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta5/apps", - "id": "appengine.apps.create", "path": "v1beta5/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" @@ -94,472 +115,159 @@ } }, "resources": { - "locations": { + "services": { "methods": { - "get": { - "description": "Get information about a location.", - "httpMethod": "GET", + "delete": { + "response": { + "$ref": "Operation" + }, "parameterOrder": [ "appsId", - "locationsId" + "servicesId" ], - "response": { - "$ref": "Location" - }, + "httpMethod": "DELETE", "parameters": { - "appsId": { - "description": "Part of `name`. Resource name for the location.", + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" }, - "locationsId": { + "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.", "type": "string", "required": true } }, "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": "v1beta5/apps/{appsId}/locations/{locationsId}", - "path": "v1beta5/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get" + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.delete", + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "description": "Deletes the specified service and all enclosed versions." }, - "list": { + "patch": { "response": { - "$ref": "ListLocationsResponse" + "$ref": "Operation" }, "parameterOrder": [ - "appsId" + "appsId", + "servicesId" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "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": { - "filter": { + "migrateTraffic": { "location": "query", - "description": "The standard list filter.", - "type": "string" + "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" }, - "pageToken": { + "mask": { "location": "query", - "description": "The standard list page token.", + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.", "type": "string" }, - "appsId": { - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true, "location": "path" }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "type": "string", + "required": true } }, - "flatPath": "v1beta5/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "path": "v1beta5/apps/{appsId}/locations", - "description": "Lists information about the supported locations for this service." - } - } - }, - "services": { - "methods": { - "delete": { "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch", "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete", - "description": "Deletes the specified service and all enclosed versions.", - "httpMethod": "DELETE", + "request": { + "$ref": "Service" + }, + "description": "Updates the configuration of the specified service." + }, + "list": { + "path": "v1beta5/apps/{appsId}/services", + "id": "appengine.apps.services.list", + "description": "Lists all the services in the application.", + "httpMethod": "GET", "parameterOrder": [ - "appsId", - "servicesId" + "appsId" ], "response": { - "$ref": "Operation" + "$ref": "ListServicesResponse" }, "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": { - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", + "pageSize": { + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer", + "location": "query" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string", - "required": true, - "location": "path" + "location": "query" }, "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", "type": "string", - "required": true, - "location": "path" + "required": true } - } + }, + "flatPath": "v1beta5/apps/{appsId}/services" }, - "patch": { - "description": "Updates the configuration of the specified service.", - "request": { + "get": { + "response": { "$ref": "Service" }, - "httpMethod": "PATCH", "parameterOrder": [ "appsId", "servicesId" ], - "response": { - "$ref": "Operation" - }, + "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": { - "mask": { - "location": "query", - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.", - "type": "string" - }, "servicesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", - "type": "string", "required": true, "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/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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch" - }, - "list": { - "response": { - "$ref": "ListServicesResponse" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "description": "Continuation token for fetching the next page of results." - }, "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", "type": "string", "required": true, "location": "path" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum results to return per page.", - "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", - "id": "appengine.apps.services.list", - "path": "v1beta5/apps/{appsId}/services", - "description": "Lists all the services in the application." - }, - "get": { - "description": "Gets the current configuration of the specified service.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "Service" - }, - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "type": "string", - "required": true, - "location": "path" - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "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}", + "id": "appengine.apps.services.get", "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get" + "description": "Gets the current configuration of the specified service." } }, "resources": { "versions": { - "resources": { - "instances": { - "methods": { - "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`.", - "type": "string", - "required": true, - "location": "path" - }, - "pageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" - }, - "appsId": { - "type": "string", - "required": true, - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1." - }, - "pageSize": { - "format": "int32", - "description": "Maximum results to return per page.", - "type": "integer", - "location": "query" - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "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", - "id": "appengine.apps.services.versions.instances.list", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances" - }, - "get": { - "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": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "instancesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "type": "string", - "required": true, - "location": "path" - }, - "versionsId": { - "type": "string", - "required": true, - "location": "path", - "description": "Part of `name`. See documentation of `appsId`." - } - }, - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.get", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Gets instance information." - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "instancesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", - "type": "string", - "required": true, - "location": "path" - }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "location": "path" - }, - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "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.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "DELETE", - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, - "instancesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "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\".", - "type": "string", - "required": true - }, - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.delete", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" - } - } - } - }, "methods": { - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", - "type": "string", - "required": true - }, - "servicesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true, - "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", - "description": "Deploys new code and resource files to a new version.", - "request": { - "$ref": "Version" - } - }, "delete": { - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "description": "Deletes an existing version.", "response": { "$ref": "Operation" @@ -570,13 +278,10 @@ "versionsId" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "type": "string", - "required": true - }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", "type": "string", @@ -588,20 +293,19 @@ "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "type": "string", "required": true + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.delete", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}" }, "patch": { - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta5/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/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.", "httpMethod": "PATCH", "parameterOrder": [ "appsId", @@ -611,39 +315,44 @@ "response": { "$ref": "Operation" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "servicesId": { - "type": "string", - "required": true, - "location": "path", - "description": "Part of `name`. See documentation of `appsId`." - }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", - "type": "string", - "required": true, - "location": "path" - }, "mask": { - "location": "query", "format": "google-fieldmask", "description": "Standard field mask for the set of fields to be updated.", - "type": "string" + "type": "string", + "location": "query" }, "versionsId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true + }, + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "type": "string", + "required": true, + "location": "path" } + }, + "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.patch", + "description": "Updates the specified Version resource. You can specify the following fields depending on the App Engine environment and type of scaling that the version resource uses:\nserving_status (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.serving_status): For Version resources that use basic scaling, manual scaling, or run in the App Engine flexible environment.\ninstance_class (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.instance_class): For Version resources that run in the App Engine standard environment.\nautomatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.\nautomatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#Version.FIELDS.automatic_scaling): For Version resources that use automatic scaling and run in the App Engine standard environment.", + "request": { + "$ref": "Version" } }, "list": { - "id": "appengine.apps.services.versions.list", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions", "description": "Lists the versions of a service.", "response": { "$ref": "ListVersionsResponse" @@ -654,37 +363,37 @@ ], "httpMethod": "GET", "parameters": { - "pageToken": { - "location": "query", - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", - "type": "string", - "required": true - }, "pageSize": { - "location": "query", "format": "int32", "description": "Maximum results to return per page.", - "type": "integer" + "type": "integer", + "location": "query" }, "view": { - "type": "string", - "location": "query", "enum": [ "BASIC", "FULL" ], - "description": "Controls the set of fields returned in the List response." + "description": "Controls the set of fields returned in the List response.", + "type": "string", + "location": "query" }, "servicesId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", "required": true + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string", + "location": "query" + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "type": "string", + "required": true, + "location": "path" } }, "scopes": [ @@ -692,9 +401,12 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions" + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", + "id": "appengine.apps.services.versions.list", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions" }, "get": { + "httpMethod": "GET", "response": { "$ref": "Version" }, @@ -703,13 +415,17 @@ "servicesId", "versionsId" ], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", "type": "string", - "required": true + "required": true, + "location": "path" }, "view": { "location": "query", @@ -721,10 +437,10 @@ "type": "string" }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -733,15 +449,241 @@ "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}", - "id": "appengine.apps.services.versions.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." + }, + "create": { + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "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\".", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.delete", + "description": "Stops a running instance." + }, + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListInstancesResponse" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "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`.", + "type": "string", + "required": true, + "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 requested. Example: apps/myapp/services/default/versions/v1.", + "type": "string", + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum results to return per page.", + "type": "integer" + }, + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "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)." + }, + "get": { + "description": "Gets instance information.", + "httpMethod": "GET", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Instance" + }, + "parameters": { + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "instancesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "type": "string", + "required": true + } + }, + "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" + }, + "debug": { + "httpMethod": "POST", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1.", + "type": "string", + "required": true, + "location": "path" + }, + "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "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", + "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." + } + } } } } @@ -750,10 +692,7 @@ "operations": { "methods": { "get": { - "path": "v1beta5/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.", - "httpMethod": "GET", "response": { "$ref": "Operation" }, @@ -761,18 +700,19 @@ "appsId", "operationsId" ], + "httpMethod": "GET", "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. The name of the operation resource.", "type": "string", - "required": true + "required": true, + "location": "path" }, "operationsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "scopes": [ @@ -780,26 +720,103 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta5/apps/{appsId}/operations/{operationsId}" + "flatPath": "v1beta5/apps/{appsId}/operations/{operationsId}", + "id": "appengine.apps.operations.get", + "path": "v1beta5/apps/{appsId}/operations/{operationsId}" }, "list": { - "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.", + "httpMethod": "GET", + "parameterOrder": [ + "appsId" + ], "response": { "$ref": "ListOperationsResponse" }, - "parameterOrder": [ - "appsId" + "parameters": { + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "type": "string", + "required": true, + "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", + "path": "v1beta5/apps/{appsId}/operations", + "id": "appengine.apps.operations.list" + } + } + }, + "locations": { + "methods": { + "get": { + "description": "Get information about a location.", "httpMethod": "GET", + "response": { + "$ref": "Location" + }, + "parameterOrder": [ + "appsId", + "locationsId" + ], + "parameters": { + "locationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "type": "string", + "required": true, + "location": "path" + }, + "appsId": { + "description": "Part of `name`. Resource name for the location.", + "type": "string", + "required": true, + "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}", + "path": "v1beta5/apps/{appsId}/locations/{locationsId}", + "id": "appengine.apps.locations.get" + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListLocationsResponse" + }, "parameters": { + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, "pageToken": { "location": "query", "description": "The standard list page token.", @@ -807,22 +824,26 @@ }, "appsId": { "location": "path", - "description": "Part of `name`. The name of the operation's parent resource.", + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "type": "string", "required": true }, "pageSize": { - "location": "query", "format": "int32", "description": "The standard list page size.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" + "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}/locations", + "path": "v1beta5/apps/{appsId}/locations", + "id": "appengine.apps.locations.list", + "description": "Lists information about the supported locations for this service." } } } @@ -830,21 +851,6 @@ } }, "parameters": { - "key": { - "type": "string", - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token." - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, "pp": { "description": "Pretty-print response.", "default": "true", @@ -852,9 +858,9 @@ "location": "query" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "bearer_token": { "location": "query", @@ -862,9 +868,9 @@ "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "prettyPrint": { "description": "Returns response with indentations and line breaks.", @@ -873,9 +879,9 @@ "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", @@ -897,122 +903,43 @@ "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" - } - }, - "schemas": { - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", - "properties": { - "instances": { - "description": "The instances belonging to the requested version.", - "items": { - "$ref": "Instance" - }, - "type": "array" - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - } - }, - "id": "ListInstancesResponse" - }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", - "properties": { - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" - }, - "errorCode": { - "description": "Error condition this handler applies to.", - "type": "string", - "enumDescriptions": [ - "Not specified. ERROR_CODE_DEFAULT is assumed.", - "All other error types.", - "Application has exceeded a resource quota.", - "Client blocked by the application's Denial of Service protection configuration.", - "Deadline reached before the application responds." - ], - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] - }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" - }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly", - "type": "string" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "insertTime": { - "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1" + "description": "V1 error format.", + "type": "string" + }, + "alt": { + "description": "Data format for response.", + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query" + }, + "key": { + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "access_token": { + "location": "query", + "description": "OAuth access token.", + "type": "string" }, + "quotaUser": { + "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" + } + }, + "schemas": { "OperationMetadataV1Alpha": { - "id": "OperationMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", "properties": { "warning": { "description": "Durable messages that persist on every operation poll. @OutputOnly", @@ -1022,9 +949,9 @@ "type": "array" }, "insertTime": { - "type": "string", "format": "google-datetime", - "description": "Time that this operation was created.@OutputOnly" + "description": "Time that this operation was created.@OutputOnly", + "type": "string" }, "user": { "description": "User who requested this operation.@OutputOnly", @@ -1039,20 +966,53 @@ "type": "string" }, "method": { - "type": "string", - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly" + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "type": "string" }, "endTime": { "format": "google-datetime", "description": "Time that this operation completed.@OutputOnly", "type": "string" } - } + }, + "id": "OperationMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" + }, + "Network": { + "description": "Extra network settings. Only applicable for VM runtimes.", + "type": "object", + "properties": { + "subnetworkName": { + "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", + "type": "string" + }, + "instanceTag": { + "description": "Tag to apply to the VM instance during creation.", + "type": "string" + }, + "forwardedPorts": { + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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" }, "Application": { "description": "An Application resource contains the top-level configuration of an App Engine application.", "type": "object", "properties": { + "codeBucket": { + "description": "A Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", + "type": "string" + }, "location": { "description": "Location from which this application will be run. Application instances will run out of data centers in the chosen location, which is also where all of the application's end user content is stored.Defaults to us-central.Options are:us-central - Central USeurope-west - Western Europeus-east1 - Eastern US", "type": "string" @@ -1076,54 +1036,43 @@ "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": { - "type": "string", "format": "google-duration", - "description": "Cookie expiration policy for this application." + "description": "Cookie expiration policy for this application.", + "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": "A Google Cloud Storage bucket that can be used for storing files associated with this application. This bucket is associated with the application and can be used by the gcloud deployment commands.@OutputOnly", - "type": "string" } }, "id": "Application" }, - "Network": { - "description": "Extra network settings. Only applicable for VM runtimes.", + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", "type": "object", "properties": { - "subnetworkName": { - "description": "Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path.If a subnetwork name is specified, a network name will also be required unless it is for the default network.\nIf the network the VM instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range.\nIf the network the VM instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetwork_name) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network.\nIf the network the VM instance is being created in is a custom Subnet Mode Network, then the subnetwork_name must be specified and the IP address is created from the IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the same region as the Flex app.", + "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" }, - "instanceTag": { - "description": "Tag to apply to the VM instance during creation.", + "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" }, - "forwardedPorts": { - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", - "items": { - "type": "string" - }, - "type": "array" - }, - "name": { - "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", "type": "string" } }, - "id": "Network" + "id": "UrlDispatchRule" }, "Instance": { "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", @@ -1139,8 +1088,8 @@ "type": "number" }, "vmId": { - "type": "string", - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly" + "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", @@ -1172,10 +1121,6 @@ "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" - }, "availability": { "enumDescriptions": [ "", @@ -1190,6 +1135,10 @@ "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" + }, "errors": { "format": "uint32", "description": "Number of errors since this instance was started.@OutputOnly", @@ -1212,39 +1161,20 @@ }, "id": "Instance" }, - "UrlDispatchRule": { - "id": "UrlDispatchRule", - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object", - "properties": { - "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" - }, - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", - "type": "string" - }, - "path": { - "description": "Pathname within the host. Must start with a \"/\". A single \"*\" can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.", - "type": "string" - } - } - }, "ListVersionsResponse": { "description": "Response message for Versions.ListVersions.", "type": "object", "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, "versions": { + "description": "The versions belonging to the requested service.", "items": { "$ref": "Version" }, - "type": "array", - "description": "The versions belonging to the requested service." - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "array" } }, "id": "ListVersionsResponse" @@ -1261,33 +1191,17 @@ "id": "ApiEndpointHandler" }, "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", - "type": "object", "properties": { - "maxTotalInstances": { - "format": "int32", - "description": "Maximum number of instances that should be started to handle requests.", - "type": "integer" - }, - "minTotalInstances": { - "format": "int32", - "description": "Minimum number of instances that should be maintained for this version.", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" + "coolDownPeriod": { + "format": "google-duration", + "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.", + "type": "string" }, "maxConcurrentRequests": { "format": "int32", "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance.Defaults to a runtime-specific value.", "type": "integer" }, - "coolDownPeriod": { - "format": "google-duration", - "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.", - "type": "string" - }, "maxPendingLatency": { "format": "google-duration", "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.", @@ -1302,99 +1216,127 @@ "description": "Target scaling by disk usage." }, "minPendingLatency": { - "type": "string", "format": "google-duration", - "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it." + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", + "type": "string" + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." }, "maxIdleInstances": { "format": "int32", "description": "Maximum number of idle instances that should be maintained for this version.", "type": "integer" }, - "requestUtilization": { - "description": "Target scaling by request utilization.", - "$ref": "RequestUtilization" - }, "minIdleInstances": { "format": "int32", "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", "type": "integer" - } - }, - "id": "AutomaticScaling" - }, - "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{\"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" + "maxTotalInstances": { + "format": "int32", + "description": "Maximum number of instances that should be started to handle requests.", + "type": "integer" }, - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" + "minTotalInstances": { + "format": "int32", + "description": "Minimum number of instances that should be maintained for this version.", + "type": "integer" }, - "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" + "networkUtilization": { + "description": "Target scaling by network usage.", + "$ref": "NetworkUtilization" } - } + }, + "id": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "type": "object" }, "NetworkUtilization": { "description": "Target scaling by network usage. Only applicable for VM runtimes.", "type": "object", "properties": { + "targetReceivedBytesPerSec": { + "format": "int32", + "description": "Target bytes received per second.", + "type": "integer" + }, + "targetSentPacketsPerSec": { + "format": "int32", + "description": "Target packets sent per second.", + "type": "integer" + }, "targetReceivedPacketsPerSec": { - "type": "integer", "format": "int32", - "description": "Target packets received per second." + "description": "Target packets received per second.", + "type": "integer" }, "targetSentBytesPerSec": { "format": "int32", "description": "Target bytes sent per second.", "type": "integer" + } + }, + "id": "NetworkUtilization" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "type": "object", + "properties": { + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", + "type": "string" }, - "targetReceivedBytesPerSec": { - "format": "int32", - "description": "Target bytes received per second.", - "type": "integer" + "metadata": { + "description": "Service-specific metadata. For example the available capacity at the given location.", + "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{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" }, - "targetSentPacketsPerSec": { - "type": "integer", - "format": "int32", - "description": "Target packets sent per second." + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" } }, - "id": "NetworkUtilization" + "id": "Location" }, "HealthCheck": { - "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", "properties": { - "restartThreshold": { - "type": "integer", + "unhealthyThreshold": { "format": "uint32", - "description": "Number of consecutive failed health checks required before an instance is restarted." + "description": "Number of consecutive failed health checks required before removing traffic.", + "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" }, "healthyThreshold": { "format": "uint32", "description": "Number of consecutive successful health checks required before receiving traffic.", "type": "integer" }, + "restartThreshold": { + "format": "uint32", + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "type": "integer" + }, "checkInterval": { "format": "google-duration", "description": "Interval between health checks.", @@ -1404,23 +1346,12 @@ "format": "google-duration", "description": "Time before the health check is considered failed.", "type": "string" - }, - "unhealthyThreshold": { - "format": "uint32", - "description": "Number of consecutive failed health checks required before removing traffic.", - "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" } - } + }, + "id": "HealthCheck" }, "SourceReference": { + "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", "type": "object", "properties": { "repository": { @@ -1432,8 +1363,7 @@ "type": "string" } }, - "id": "SourceReference", - "description": "Reference to a particular snapshot of the source tree used to build and deploy the application." + "id": "SourceReference" }, "DebugInstanceRequest": { "description": "Request message for Instances.DebugInstance.", @@ -1447,8 +1377,6 @@ "id": "DebugInstanceRequest" }, "Library": { - "description": "Third-party Python runtime library that is required by the application.", - "type": "object", "properties": { "name": { "description": "Name of the library. Example: \"django\".", @@ -1459,7 +1387,9 @@ "type": "string" } }, - "id": "Library" + "id": "Library", + "description": "Third-party Python runtime library that is required by the application.", + "type": "object" }, "OperationMetadataV1Beta5": { "description": "Metadata for the given google.longrunning.Operation.", @@ -1484,8 +1414,8 @@ "type": "string" }, "user": { - "type": "string", - "description": "User who requested this operation.@OutputOnly" + "description": "User who requested this operation.@OutputOnly", + "type": "string" } }, "id": "OperationMetadataV1Beta5" @@ -1494,22 +1424,21 @@ "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.", "items": { "$ref": "Location" }, "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" } }, "id": "ListLocationsResponse" }, "ContainerInfo": { - "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\"", @@ -1517,99 +1446,24 @@ } }, "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." + "description": "Docker image that is used to create a container and start a VM instance for the version that you deploy. Only applicable for instances running in the App Engine flexible environment.", + "type": "object" }, "Version": { + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", + "type": "object", "properties": { - "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": { - "$ref": "EndpointsApiService", - "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." - }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" - }, - "instanceClass": { - "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", - "type": "string" - }, - "servingStatus": { - "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." - ], - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ] - }, - "runtimeApiVersion": { - "description": "The version of the API in the given runtime environment. Please see the app.yaml reference for valid values at https://cloud.google.com/appengine/docs/standard/\u003clanguage\u003e/config/appref", - "type": "string" - }, - "deployment": { - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", - "$ref": "Deployment" - }, - "inboundServices": { - "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" - }, - "type": "array", - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application to receive email-bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ], - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service." - }, - "resources": { - "description": "Machine resources for this version. Only applicable for VM runtimes.", - "$ref": "Resources" - }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", - "items": { - "$ref": "ErrorHandler" - }, - "type": "array" - }, "defaultExpiration": { - "type": "string", "format": "google-duration", - "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." + "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.", + "type": "string" }, "libraries": { + "description": "Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set.", "items": { "$ref": "Library" }, - "type": "array", - "description": "Configuration for third-party Python runtime libraries required by the application.Only returned in GET requests if view=FULL is set." + "type": "array" }, "creationTime": { "format": "google-datetime", @@ -1633,22 +1487,22 @@ "type": "string" }, "envVariables": { - "type": "object", "additionalProperties": { "type": "string" }, - "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set." + "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." + "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" - } + }, + "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.", @@ -1675,29 +1529,103 @@ "type": "string" }, "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." + "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" }, "threadsafe": { "description": "Whether multiple requests can be dispatched to this version at once.", "type": "boolean" }, "manualScaling": { - "$ref": "ManualScaling", - "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time." + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "$ref": "ManualScaling" }, "name": { "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", "type": "string" + }, + "apiConfig": { + "description": "Serving configuration for Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/).Only returned in GET requests if view=FULL is set.", + "$ref": "ApiConfigHandler" + }, + "endpointsApiService": { + "$ref": "EndpointsApiService", + "description": "Cloud Endpoints configuration.If endpoints_api_service is set, the Cloud Endpoints Extensible Service Proxy will be provided to serve the API implemented by the app." + }, + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", + "type": "boolean" + }, + "instanceClass": { + "description": "Instance class that is used to run this version. Valid values are:\nAutomaticScaling: F1, F2, F4, F4_1G\nManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for ManualScaling or BasicScaling.", + "type": "string" + }, + "servingStatus": { + "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" + }, + "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.", + "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" + ] + }, + "type": "array" + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." + }, + "errorHandlers": { + "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "items": { + "$ref": "ErrorHandler" + }, + "type": "array" } }, - "id": "Version", - "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", - "type": "object" + "id": "Version" }, "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable for VM runtimes.", - "type": "object", "properties": { "targetConcurrentRequests": { "format": "int32", @@ -1710,44 +1638,29 @@ "type": "integer" } }, - "id": "RequestUtilization" + "id": "RequestUtilization", + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "type": "object" }, - "UrlMap": { - "description": "URL pattern and description of how the URL should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the version, such as images, CSS, or JavaScript.", + "EndpointsApiService": { + "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", "type": "object", "properties": { - "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 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.", + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", "type": "string" }, + "name": { + "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "type": "string" + } + }, + "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": { "script": { "$ref": "ScriptHandler", "description": "Executes a script to handle the request that matches this URL pattern." @@ -1757,12 +1670,6 @@ "type": "string" }, "login": { - "enumDescriptions": [ - "Not specified. LOGIN_OPTIONAL is assumed.", - "Does not require that the user is signed in.", - "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", - "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." - ], "enum": [ "LOGIN_UNSPECIFIED", "LOGIN_OPTIONAL", @@ -1770,7 +1677,13 @@ "LOGIN_REQUIRED" ], "description": "Level of login required to access this resource.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." + ] }, "apiEndpoint": { "description": "Uses API Endpoints to handle requests.", @@ -1781,13 +1694,6 @@ "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": [ @@ -1796,89 +1702,90 @@ "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" ] - } - }, - "id": "UrlMap" - }, - "EndpointsApiService": { - "description": "Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The Endpoints API Service provides tooling for serving Open API and gRPC endpoints via an NGINX proxy.The fields here refer to the name and configuration id of a \"service\" resource in the Service Management API (https://cloud.google.com/service-management/overview).", - "type": "object", - "properties": { - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", - "type": "string" }, - "name": { - "description": "Endpoints service name which is the name of the \"service\" resource in the Service Management API. For example \"myapi.endpoints.myproject.cloud.goog\"", + "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 an401 HTTP status code and an error message." + ] } }, - "id": "EndpointsApiService" + "id": "UrlMap" }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "type": "object", "properties": { + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, "done": { "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", "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." + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" }, "name": { "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" } }, "id": "Operation" }, "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "type": "object", "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 action given in auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource. Defaults to optional.", - "type": "string" - }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - }, "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.", @@ -1893,7 +1800,8 @@ "SECURE_OPTIONAL", "SECURE_ALWAYS" ], - "description": "Security (HTTPS) enforcement for this URL." + "description": "Security (HTTPS) enforcement for this URL.", + "type": "string" }, "authFailAction": { "enumDescriptions": [ @@ -1908,27 +1816,53 @@ ], "description": "Action to take when users access resources that require authentication. Defaults to redirect.", "type": "string" + }, + "script": { + "description": "Path to the script from the application root directory.", + "type": "string" + }, + "login": { + "enumDescriptions": [ + "Not specified. LOGIN_OPTIONAL is assumed.", + "Does not require that the user is signed in.", + "If the user is not signed in, the auth_fail_action is taken. In addition, if the user is not an administrator for the application, they are given an error message regardless of auth_fail_action. If the user is an administrator, the handler proceeds.", + "If the user has signed in, the handler proceeds normally. Otherwise, the action given in auth_fail_action is taken." + ], + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ], + "description": "Level of login required to access this resource. Defaults to optional.", + "type": "string" + }, + "url": { + "description": "URL to serve the endpoint at.", + "type": "string" } }, - "id": "ApiConfigHandler", - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "type": "object" + "id": "ApiConfigHandler" }, "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" + "id": "ScriptHandler", + "description": "Executes a script to handle the request that matches the URL pattern.", + "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.", "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": { "format": "google-duration", "description": "Time a static file served by this handler should be cached.", @@ -1956,20 +1890,12 @@ "mimeType": { "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension.", "type": "string" - }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" } }, "id": "StaticFilesHandler" }, "FileInfo": { "properties": { - "sourceUrl": { - "description": "URL source to use to fetch this file. Must be a URL to a resource in Google Cloud Storage in the form 'http(s)://storage.googleapis.com/\u003cbucket\u003e/\u003cobject\u003e'.", - "type": "string" - }, "sha1Sum": { "description": "The SHA1 hash of the file, in hex.", "type": "string" @@ -1977,6 +1903,10 @@ "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", @@ -1984,31 +1914,24 @@ "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": { - "type": "integer", - "format": "int32", - "description": "Maximum number of instances to create for this version." - }, "idleTimeout": { - "type": "string", "format": "google-duration", - "description": "Duration of time after the last request that an instance must wait before the instance is shut down." + "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", + "type": "string" + }, + "maxInstances": { + "format": "int32", + "description": "Maximum number of instances to create for this version.", + "type": "integer" } }, - "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." + "id": "BasicScaling" }, "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", - "type": "object", "properties": { - "targetReadOpsPerSec": { - "format": "int32", - "description": "Target ops read per second.", - "type": "integer" - }, "targetReadBytesPerSec": { "format": "int32", "description": "Target bytes read per second.", @@ -2023,18 +1946,19 @@ "format": "int32", "description": "Target bytes written per second.", "type": "integer" + }, + "targetReadOpsPerSec": { + "format": "int32", + "description": "Target ops read per second.", + "type": "integer" } }, - "id": "DiskUtilization" + "id": "DiskUtilization", + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "type": "object" }, "OperationMetadataExperimental": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", - "type": "string" - }, "insertTime": { "format": "google-datetime", "description": "Time that this operation was created.@OutputOnly", @@ -2046,17 +1970,25 @@ "type": "string" }, "target": { - "type": "string", - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly" + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/customDomains/example.com.@OutputOnly", + "type": "string" }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.experimental.CustomDomains.CreateCustomDomain.@OutputOnly", + "type": "string" } }, - "id": "OperationMetadataExperimental" + "id": "OperationMetadataExperimental", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "type": "object", "properties": { "aggregationWindowLength": { "format": "google-duration", @@ -2069,13 +2001,45 @@ "type": "number" } }, - "id": "CpuUtilization", - "description": "Target scaling by CPU usage.", - "type": "object" + "id": "CpuUtilization" }, - "IdentityAwareProxy": { + "Status": { + "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", "type": "object", "properties": { + "details": { + "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "id": "Status" + }, + "IdentityAwareProxy": { + "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" @@ -2083,47 +2047,26 @@ "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": { - "type": "string", - "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" } }, "id": "IdentityAwareProxy", - "description": "Identity-Aware Proxy" + "description": "Identity-Aware Proxy", + "type": "object" }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "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": { - "code": { + "instances": { "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", + "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.", "type": "integer" - }, - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client." - }, - "details": { - "items": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "type": "object" - }, - "type": "array", - "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use." } }, - "id": "Status" + "id": "ManualScaling" }, "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": { "allocations": { @@ -2135,63 +2078,41 @@ "type": "object" }, "shardBy": { + "enumDescriptions": [ + "Diversion method unspecified.", + "Diversion based on a specially named cookie, \"GOOGAPPUID.\" The cookie must be set by the application itself or else no diversion will occur.", + "Diversion based on applying the modulus operation to a fingerprint of the IP address." + ], "enum": [ "UNSPECIFIED", "COOKIE", "IP" ], "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", - "type": "string", - "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." - ] - } - }, - "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." - }, - "ManualScaling": { - "properties": { - "instances": { - "format": "int32", - "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.", - "type": "integer" + "type": "string" } }, - "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" + "id": "TrafficSplit" }, "LocationMetadata": { - "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" + }, + "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." + "description": "Metadata for the given google.cloud.location.Location.", + "type": "object" }, "OperationMetadataV1Beta": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "endTime": { - "type": "string", - "format": "google-datetime", - "description": "Time that this operation completed.@OutputOnly" - }, "warning": { "description": "Durable messages that persist on every operation poll. @OutputOnly", "items": { @@ -2205,8 +2126,8 @@ "type": "string" }, "user": { - "type": "string", - "description": "User who requested this operation.@OutputOnly" + "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", @@ -2215,13 +2136,20 @@ "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": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", + "type": "string" } }, "id": "OperationMetadataV1Beta" }, "ListServicesResponse": { - "description": "Response message for Services.ListServices.", - "type": "object", "properties": { "nextPageToken": { "description": "Continuation token for fetching the next page of results.", @@ -2235,34 +2163,12 @@ "type": "array" } }, - "id": "ListServicesResponse" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "properties": { - "sourceReferences": { - "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", - "items": { - "$ref": "SourceReference" - }, - "type": "array" - }, - "container": { - "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", - "$ref": "ContainerInfo" - }, - "files": { - "type": "object", - "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." - } - }, - "id": "Deployment" + "id": "ListServicesResponse", + "description": "Response message for Services.ListServices.", + "type": "object" }, "Resources": { + "description": "Machine resources for a version.", "type": "object", "properties": { "volumes": { @@ -2288,8 +2194,32 @@ "type": "number" } }, - "id": "Resources", - "description": "Machine resources for a version." + "id": "Resources" + }, + "Deployment": { + "properties": { + "sourceReferences": { + "description": "Origin of the source code for this deployment. There can be more than one source reference per version if source code is distributed among multiple repositories.", + "items": { + "$ref": "SourceReference" + }, + "type": "array" + }, + "container": { + "description": "The Docker image for the container that runs the version. Only applicable for instances running in the App Engine flexible environment.", + "$ref": "ContainerInfo" + }, + "files": { + "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", + "description": "Code and application artifacts used to deploy a version to App Engine.", + "type": "object" }, "Service": { "description": "A Service resource is a logical component of an application that can share state and communicate in a secure fashion with other services. For example, an application that handles customer requests might include separate services to handle other tasks such as API requests from mobile devices or backend data analysis. Each service has a collection of versions that define a specific set of code used to implement the functionality of that service.", @@ -2300,8 +2230,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", @@ -2331,8 +2261,6 @@ "id": "Volume" }, "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -2346,12 +2274,27 @@ "type": "array" } }, - "id": "ListOperationsResponse" + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, "OperationMetadata": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { + "insertTime": { + "format": "google-datetime", + "description": "Timestamp that this operation was created.@OutputOnly", + "type": "string" + }, + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" + }, "method": { "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", "type": "string" @@ -2364,14 +2307,92 @@ "operationType": { "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", "type": "string" + } + }, + "id": "OperationMetadata" + }, + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "type": "object", + "properties": { + "instances": { + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "id": "ListInstancesResponse" + }, + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", + "type": "object", + "properties": { + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "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", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ], + "description": "Error condition this handler applies to.", + "type": "string" + }, + "staticFile": { + "description": "Static file content to be served for this error.", + "type": "string" + } + }, + "id": "ErrorHandler" + }, + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", + "properties": { + "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": { + "format": "google-datetime", + "description": "Time that this operation completed.@OutputOnly", + "type": "string" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, "insertTime": { "format": "google-datetime", - "description": "Timestamp that this operation was created.@OutputOnly", + "description": "Time that this operation was created.@OutputOnly", "type": "string" }, "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, "user": { @@ -2379,33 +2400,12 @@ "type": "string" } }, - "id": "OperationMetadata" + "id": "OperationMetadataV1" } }, + "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": "v1beta5", - "baseUrl": "https://appengine.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" - } - } - } - }, - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", - "kind": "discovery#restDescription", - "servicePath": "", - "rootUrl": "https://appengine.googleapis.com/" + } } diff --git a/DiscoveryJson/bigquerydatatransfer_v1.json b/DiscoveryJson/bigquerydatatransfer_v1.json index 0e7b6ff1eb..07324bcd44 100644 --- a/DiscoveryJson/bigquerydatatransfer_v1.json +++ b/DiscoveryJson/bigquerydatatransfer_v1.json @@ -1,10 +1,30 @@ { + "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", + "title": "BigQuery Data Transfer Service API", "ownerName": "Google", "resources": { "projects": { "methods": { "setEnabled": { - "flatPath": "v1/projects/{projectsId}:setEnabled", "id": "bigquerydatatransfer.projects.setEnabled", "path": "v1/{+name}:setEnabled", "description": "Enables or disables data transfer for a project. This\nmethod requires the additional scope of\n'https://www.googleapis.com/auth/cloudplatformprojects'\nto manage the cloud project permissions.", @@ -20,18 +40,26 @@ "httpMethod": "POST", "parameters": { "name": { - "pattern": "^projects/[^/]+$", - "location": "path", "description": "The name of the project resource in the form:\n`projects/{project_id}`", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1/projects/{projectsId}:setEnabled" }, "isEnabled": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "IsEnabledResponse" + }, "parameters": { "name": { "pattern": "^projects/[^/]+$", @@ -52,320 +80,344 @@ "description": "Returns true if data transfer is enabled for a project.", "request": { "$ref": "IsEnabledRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "IsEnabledResponse" } } }, "resources": { - "locations": { + "transferConfigs": { "methods": { - "isEnabled": { - "id": "bigquerydatatransfer.projects.locations.isEnabled", - "path": "v1/{+name}:isEnabled", - "request": { - "$ref": "IsEnabledRequest" + "scheduleRuns": { + "response": { + "$ref": "ScheduleTransferRunsResponse" }, - "description": "Returns true if data transfer is enabled for a project.", + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "location": "path", + "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns", + "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns", + "path": "v1/{+parent}:scheduleRuns", + "description": "Creates transfer runs for a time range [range_start_time, range_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" + } + }, + "patch": { "response": { - "$ref": "IsEnabledResponse" + "$ref": "TransferConfig" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "authorizationCode": { + "location": "query", + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\ngaia id of the authorizing 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", + "format": "google-fieldmask", + "description": "Required list of fields to be updated in this request.", + "type": "string" + }, "name": { - "description": "The name of the project resource in the form:\n`projects/{project_id}`", + "location": "path", + "description": "The resource name of the transfer run.\nTransfer run 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 run.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:isEnabled" - }, - "setEnabled": { - "description": "Enables or disables data transfer for a project. This\nmethod requires the additional scope of\n'https://www.googleapis.com/auth/cloudplatformprojects'\nto manage the cloud project permissions.", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "id": "bigquerydatatransfer.projects.transferConfigs.patch", + "path": "v1/{+name}", "request": { - "$ref": "SetEnabledRequest" + "$ref": "TransferConfig" + }, + "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated." + }, + "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}/transferConfigs/{config_id}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + } }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "id": "bigquerydatatransfer.projects.transferConfigs.get", + "path": "v1/{+name}", + "description": "Returns information about a data transfer config.", "response": { - "$ref": "Empty" + "$ref": "TransferConfig" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET" + }, + "delete": { + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "path": "v1/{+name}", + "id": "bigquerydatatransfer.projects.transferConfigs.delete", + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, "parameters": { "name": { "location": "path", - "description": "The name of the project resource in the form:\n`projects/{project_id}`", + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" } }, "scopes": [ + "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "flatPath": "v1/projects/{projectsId}/transferConfigs", + "path": "v1/{+parent}/transferConfigs", + "id": "bigquerydatatransfer.projects.transferConfigs.list", + "description": "Returns information about all data transfers in the project.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:setEnabled", - "id": "bigquerydatatransfer.projects.locations.setEnabled", - "path": "v1/{+name}:setEnabled" + "response": { + "$ref": "ListTransferConfigsResponse" + }, + "parameters": { + "dataSourceIds": { + "location": "query", + "description": "When specified, only configurations of requested data sources are returned.", + "type": "string", + "repeated": true + }, + "parent": { + "location": "path", + "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + }, + "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": { + "location": "query", + "format": "int32", + "description": "Page size. The default page size is the maximum value of 1000 results.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "create": { + "flatPath": "v1/projects/{projectsId}/transferConfigs", + "id": "bigquerydatatransfer.projects.transferConfigs.create", + "path": "v1/{+parent}/transferConfigs", + "request": { + "$ref": "TransferConfig" + }, + "description": "Creates a new data transfer configuration.", + "response": { + "$ref": "TransferConfig" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "authorizationCode": { + "location": "query", + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", + "type": "string" + }, + "parent": { + "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nor\n/projects/{project_id}/locations/-\nIn case when '-' is specified as location_id, location is infered from\nthe destination dataset region.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + } } }, "resources": { - "transferConfigs": { + "runs": { "methods": { - "delete": { - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", - "httpMethod": "DELETE", + "list": { + "description": "Returns information about running and completed jobs.", + "httpMethod": "GET", "parameterOrder": [ - "name" + "parent" ], "response": { - "$ref": "Empty" + "$ref": "ListTransferRunsResponse" }, "scopes": [ "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], "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}`", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.delete" - }, - "list": { - "description": "Returns information about all data transfers in the project.", - "response": { - "$ref": "ListTransferConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "dataSourceIds": { - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string", - "repeated": true, - "location": "query" - }, - "parent": { - "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "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.", + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", "type": "string", "location": "query" }, "pageSize": { + "type": "integer", "location": "query", "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "type": "integer" - } - }, - "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", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.list", - "path": "v1/{+parent}/transferConfigs" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "TransferConfig" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nor\n/projects/{project_id}/locations/-\nIn case when '-' is specified as location_id, location is infered from\nthe destination dataset region.", + "description": "Page size. The default page size is the maximum value of 1000 results." + }, + "statuses": { + "location": "query", + "enum": [ + "TRANSFER_STATUS_UNSPECIFIED", + "INACTIVE", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "description": "When specified, only transfer runs with requested statuses are returned.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$" + "repeated": true }, - "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.", + "runAttempt": { + "description": "Indicates how run attempts are to be pulled.", "type": "string", - "location": "query" - } - }, - "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." - }, - "scheduleRuns": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", - "path": "v1/{+parent}:scheduleRuns", - "request": { - "$ref": "ScheduleTransferRunsRequest" - }, - "description": "Creates transfer runs for a time range [range_start_time, range_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" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { + "location": "query", + "enum": [ + "RUN_ATTEMPT_UNSPECIFIED", + "LATEST" + ] + }, "parent": { "location": "path", - "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "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}`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" } - } + }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs", + "path": "v1/{+parent}/runs", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.list" }, - "patch": { + "get": { + "id": "bigquerydatatransfer.projects.transferConfigs.runs.get", + "path": "v1/{+name}", + "description": "Returns information about the particular transfer run.", "response": { - "$ref": "TransferConfig" + "$ref": "TransferRun" }, "parameterOrder": [ "name" ], - "httpMethod": "PATCH", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "authorizationCode": { - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\ngaia id of the authorizing user.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string", - "location": "query" - }, - "updateMask": { - "format": "google-fieldmask", - "description": "Required list of fields to be updated in this request.", - "type": "string", - "location": "query" - }, "name": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", "location": "path", - "description": "The resource name of the transfer run.\nTransfer run 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 run." + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.patch", - "path": "v1/{+name}", - "request": { - "$ref": "TransferConfig" - }, - "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated." + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}" }, - "get": { - "description": "Returns information about a data transfer config.", + "delete": { + "description": "Deletes the specified transfer run.", "response": { - "$ref": "TransferConfig" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", "type": "string", "required": true, - "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}`" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.get", + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.delete", "path": "v1/{+name}" } }, "resources": { - "runs": { + "transferLogs": { "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", - "type": "string", - "required": true - } - }, - "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." - }, "list": { - "description": "Returns information about running and completed jobs.", - "httpMethod": "GET", + "description": "Returns user facing log messages for the data transfer run.", "parameterOrder": [ "parent" ], "response": { - "$ref": "ListTransferRunsResponse" + "$ref": "ListTransferLogsResponse" }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", @@ -373,602 +425,455 @@ ], "parameters": { "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "description": "Pagination token, which can be used to request a specific page\nof `ListTransferLogsRequest` list results. For multiple-page\nresults, `ListTransferLogsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", "type": "string", "location": "query" }, "pageSize": { - "location": "query", "format": "int32", "description": "Page size. The default page size is the maximum value of 1000 results.", - "type": "integer" + "type": "integer", + "location": "query" }, - "statuses": { + "messageTypes": { "location": "query", "enum": [ - "TRANSFER_STATUS_UNSPECIFIED", - "INACTIVE", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" + "MESSAGE_SEVERITY_UNSPECIFIED", + "INFO", + "WARNING", + "ERROR" ], - "description": "When specified, only transfer runs with requested statuses are returned.", + "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", "type": "string", "repeated": true }, - "runAttempt": { - "description": "Indicates how run attempts are to be pulled.", - "type": "string", - "location": "query", - "enum": [ - "RUN_ATTEMPT_UNSPECIFIED", - "LATEST" - ] - }, "parent": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "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}`." - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs", - "path": "v1/{+parent}/runs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "TransferRun" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "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}`", - "type": "string", - "required": true + "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}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.get", - "description": "Returns information about the particular transfer run." - } - }, - "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": { - "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", - "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "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" - }, - "parent": { - "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", - "path": "v1/{+parent}/transferLogs", - "description": "Returns user facing log messages for the data transfer run." - } - } + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list", + "path": "v1/{+parent}/transferLogs" } } } } - }, - "dataSources": { - "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources", - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListDataSourcesResponse" - }, - "parameters": { - "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": { - "location": "query", - "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "type": "integer" - }, - "parent": { - "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "get": { - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.dataSources.get", - "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "DataSource" - }, - "parameters": { - "name": { - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}" - }, - "checkValidCreds": { - "request": { - "$ref": "CheckValidCredsRequest" - }, - "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "CheckValidCredsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds", - "path": "v1/{+name}:checkValidCreds", - "id": "bigquerydatatransfer.projects.locations.dataSources.checkValidCreds" - } - } } } }, - "transferConfigs": { + "dataSources": { "methods": { - "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": { - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.transferConfigs.get", - "path": "v1/{+name}", - "description": "Returns information about a data transfer config.", - "response": { - "$ref": "TransferConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.transferConfigs.patch", - "path": "v1/{+name}", - "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", - "request": { - "$ref": "TransferConfig" - }, + "list": { + "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.", "response": { - "$ref": "TransferConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "format": "google-fieldmask", - "description": "Required list of fields to be updated in this request.", - "type": "string", - "location": "query" - }, - "name": { - "description": "The resource name of the transfer run.\nTransfer run 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 run.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" - }, - "authorizationCode": { - "location": "query", - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\ngaia id of the authorizing 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" - } + "$ref": "ListDataSourcesResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", - "httpMethod": "DELETE", "parameterOrder": [ - "name" + "parent" ], - "response": { - "$ref": "Empty" - }, + "httpMethod": "GET", "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}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.delete" - }, - "list": { - "description": "Returns information about all data transfers in the project.", - "httpMethod": "GET", - "response": { - "$ref": "ListTransferConfigsResponse" - }, - "parameterOrder": [ - "parent" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "dataSourceIds": { - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string", - "repeated": true, - "location": "query" - }, "parent": { - "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", + "location": "path", + "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" }, "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." + "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": { - "type": "integer", "location": "query", "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results." - } - }, - "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": "Page size. The default page size is the maximum value of 1000 results.", + "type": "integer" + } + }, + "flatPath": "v1/projects/{projectsId}/dataSources" }, - "create": { + "get": { + "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", + "httpMethod": "GET", "response": { - "$ref": "TransferConfig" + "$ref": "DataSource" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "authorizationCode": { - "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nor\n/projects/{project_id}/locations/-\nIn case when '-' is specified as location_id, location is infered from\nthe destination dataset region.", + "name": { "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "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}`" } }, - "flatPath": "v1/projects/{projectsId}/transferConfigs", - "id": "bigquerydatatransfer.projects.transferConfigs.create", - "path": "v1/{+parent}/transferConfigs", + "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}", + "path": "v1/{+name}", + "id": "bigquerydatatransfer.projects.dataSources.get" + }, + "checkValidCreds": { "request": { - "$ref": "TransferConfig" + "$ref": "CheckValidCredsRequest" }, - "description": "Creates a new data transfer configuration." - }, - "scheduleRuns": { + "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], "response": { - "$ref": "ScheduleTransferRunsResponse" + "$ref": "CheckValidCredsResponse" }, - "parameterOrder": [ - "parent" + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "httpMethod": "POST", "parameters": { - "parent": { - "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "name": { + "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "pattern": "^projects/[^/]+/dataSources/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns", - "path": "v1/{+parent}:scheduleRuns", - "description": "Creates transfer runs for a time range [range_start_time, range_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" - } + "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}:checkValidCreds", + "path": "v1/{+name}:checkValidCreds", + "id": "bigquerydatatransfer.projects.dataSources.checkValidCreds" } - }, + } + }, + "locations": { "resources": { - "runs": { + "transferConfigs": { "methods": { - "delete": { + "create": { + "response": { + "$ref": "TransferConfig" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { + "authorizationCode": { + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nThis is required if new credentials are needed, as indicated by\n`CheckValidCreds`.\nIn order to obtain authorization_code, please make a\nrequest to\nhttps://www.gstatic.com/bigquerydatatransfer/oauthz/auth?client_id=\u003cdatatransferapiclientid\u003e&scope=\u003cdata_source_scopes\u003e&redirect_uri=\u003credirect_uri\u003e\n\n* client_id should be OAuth client_id of BigQuery DTS API for the given\n data source returned by ListDataSources method.\n* data_source_scopes are the scopes returned by ListDataSources method.\n* redirect_uri is an optional parameter. If not specified, then\n authorization code is posted to the opener of authorization flow window.\n Otherwise it will be sent to the redirect uri. A special value of\n urn:ietf:wg:oauth:2.0:oob means that authorization code should be\n returned in the title bar of the browser, with the page text prompting\n the user to copy the code and paste it in the application.", + "type": "string", + "location": "query" + }, + "parent": { "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "description": "The BigQuery project id where the transfer configuration should be created.\nMust be in the format /projects/{project_id}/locations/{location_id}\nor\n/projects/{project_id}/locations/-\nIn case when '-' is specified as location_id, location is infered from\nthe destination dataset region.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.create", + "path": "v1/{+parent}/transferConfigs", + "request": { + "$ref": "TransferConfig" + }, + "description": "Creates a new data transfer configuration." + }, + "scheduleRuns": { + "request": { + "$ref": "ScheduleTransferRunsRequest" + }, + "description": "Creates transfer runs for a time range [range_start_time, range_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" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", + "path": "v1/{+parent}:scheduleRuns" + }, + "get": { + "description": "Returns information about a data transfer config.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "TransferConfig" + }, + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.delete", - "description": "Deletes the specified transfer run.", - "httpMethod": "DELETE", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.get" + }, + "patch": { + "response": { + "$ref": "TransferConfig" + }, "parameterOrder": [ "name" ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "format": "google-fieldmask", + "description": "Required list of fields to be updated in this request.", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "The resource name of the transfer run.\nTransfer run 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 run.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" + }, + "authorizationCode": { + "location": "query", + "description": "Optional OAuth2 authorization code to use with this transfer configuration.\nIf it is provided, the transfer configuration will be associated with the\ngaia id of the authorizing 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" + } + }, + "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.patch", + "path": "v1/{+name}", + "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", + "request": { + "$ref": "TransferConfig" + } + }, + "delete": { + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", "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}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "location": "path" + } + }, + "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}" }, "list": { - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs", - "path": "v1/{+parent}/runs", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.list", - "description": "Returns information about running and completed jobs.", - "httpMethod": "GET", "response": { - "$ref": "ListTransferRunsResponse" + "$ref": "ListTransferConfigsResponse" }, "parameterOrder": [ "parent" ], + "httpMethod": "GET", "parameters": { "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListTransferRunsRequest` list results. For multiple-page\nresults, `ListTransferRunsResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" + "location": "query", + "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" }, "pageSize": { - "type": "integer", - "location": "query", "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results." + "description": "Page size. The default page size is the maximum value of 1000 results.", + "type": "integer", + "location": "query" }, - "statuses": { + "dataSourceIds": { + "description": "When specified, only configurations of requested data sources are returned.", "type": "string", "repeated": true, - "location": "query", - "enum": [ - "TRANSFER_STATUS_UNSPECIFIED", - "INACTIVE", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ], - "description": "When specified, only transfer runs with requested statuses are returned." - }, - "runAttempt": { - "enum": [ - "RUN_ATTEMPT_UNSPECIFIED", - "LATEST" - ], - "description": "Indicates how run attempts are to be pulled.", - "type": "string", "location": "query" }, "parent": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "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}`." + "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`." } }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "get": { - "response": { - "$ref": "TransferRun" - }, - "parameterOrder": [ - "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}/transferConfigs/{config_id}/runs/{run_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.get", - "path": "v1/{+name}", - "description": "Returns information about the particular transfer run." + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.list", + "path": "v1/{+parent}/transferConfigs", + "description": "Returns information about all data transfers in the project." } }, "resources": { - "transferLogs": { + "runs": { "methods": { - "list": { - "httpMethod": "GET", + "delete": { + "description": "Deletes the specified transfer run.", "parameterOrder": [ - "parent" + "name" ], "response": { - "$ref": "ListTransferLogsResponse" + "$ref": "Empty" + }, + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.delete", + "path": "v1/{+name}" + }, + "list": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list", + "path": "v1/{+parent}/runs", + "description": "Returns information about running and completed jobs.", + "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": { + "parent": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "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}`." + }, "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.", + "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" }, "pageSize": { - "location": "query", "format": "int32", "description": "Page size. The default page size is the maximum value of 1000 results.", - "type": "integer" + "type": "integer", + "location": "query" }, - "messageTypes": { - "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", + "statuses": { "type": "string", "repeated": true, "location": "query", "enum": [ - "MESSAGE_SEVERITY_UNSPECIFIED", - "INFO", - "WARNING", - "ERROR" - ] + "TRANSFER_STATUS_UNSPECIFIED", + "INACTIVE", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "description": "When specified, only transfer runs with requested statuses are returned." }, - "parent": { - "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", + "runAttempt": { + "description": "Indicates how run attempts are to be pulled.", + "type": "string", + "location": "query", + "enum": [ + "RUN_ATTEMPT_UNSPECIFIED", + "LATEST" + ] + } + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "TransferRun" + }, + "parameters": { + "name": { + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", "location": "path" } }, @@ -977,66 +882,186 @@ "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", - "path": "v1/{+parent}/transferLogs", - "id": "bigquerydatatransfer.projects.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.get", + "description": "Returns information about the particular transfer run." + } + }, + "resources": { + "transferLogs": { + "methods": { + "list": { + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", + "path": "v1/{+parent}/transferLogs", + "description": "Returns user facing log messages for the data transfer run.", + "response": { + "$ref": "ListTransferLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "parent": { + "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", + "type": "string", + "required": true, + "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", + "format": "int32", + "description": "Page size. The default page size is the maximum value of 1000 results.", + "type": "integer" + }, + "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" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs" + } + } + } + } + } + } + }, + "dataSources": { + "methods": { + "list": { + "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/[^/]+/locations/[^/]+$", + "location": "path", + "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", + "type": "string", + "required": true + }, + "pageToken": { + "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "Page size. The default page size is the maximum value of 1000 results.", + "type": "integer", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources", + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListDataSourcesResponse" + } + }, + "get": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}", + "path": "v1/{+name}", + "id": "bigquerydatatransfer.projects.locations.dataSources.get", + "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", + "httpMethod": "GET", + "response": { + "$ref": "DataSource" + }, + "parameterOrder": [ + "name" + ], + "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": { + "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}`", + "type": "string", + "required": true + } + } + }, + "checkValidCreds": { + "request": { + "$ref": "CheckValidCredsRequest" + }, + "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.", + "response": { + "$ref": "CheckValidCredsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "name": { + "location": "path", + "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$" } - } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds", + "id": "bigquerydatatransfer.projects.locations.dataSources.checkValidCreds", + "path": "v1/{+name}:checkValidCreds" } } } - } - }, - "dataSources": { + }, "methods": { - "list": { - "response": { - "$ref": "ListDataSourcesResponse" + "isEnabled": { + "path": "v1/{+name}:isEnabled", + "id": "bigquerydatatransfer.projects.locations.isEnabled", + "request": { + "$ref": "IsEnabledRequest" }, + "description": "Returns true if data transfer is enabled for a project.", + "httpMethod": "POST", "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "Pagination token, which can be used to request a specific page\nof `ListDataSourcesRequest` list results. For multiple-page\nresults, `ListDataSourcesResponse` outputs\na `next_page` token, which can be used as the\n`page_token` value to request the next page of list results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "format": "int32", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The BigQuery project id for which data sources should be returned.\nMust be in the form: `projects/{project_id}`", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "name" ], - "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." - }, - "get": { - "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", "response": { - "$ref": "DataSource" + "$ref": "IsEnabledResponse" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", @@ -1044,46 +1069,42 @@ ], "parameters": { "name": { - "location": "path", - "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/dataSources/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "description": "The name of the project resource in the form:\n`projects/{project_id}`" } }, - "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}", - "id": "bigquerydatatransfer.projects.dataSources.get", - "path": "v1/{+name}" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:isEnabled" }, - "checkValidCreds": { - "description": "Returns true if valid credentials exist for the given data source and\nrequesting user.", + "setEnabled": { + "description": "Enables or disables data transfer for a project. This\nmethod requires the additional scope of\n'https://www.googleapis.com/auth/cloudplatformprojects'\nto manage the cloud project permissions.", "request": { - "$ref": "CheckValidCredsRequest" - }, - "response": { - "$ref": "CheckValidCredsResponse" + "$ref": "SetEnabledRequest" }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, "parameters": { "name": { - "description": "The data source in the form:\n`projects/{project_id}/dataSources/{data_source_id}`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/dataSources/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "description": "The name of the project resource in the form:\n`projects/{project_id}`" } }, "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/dataSources/{dataSourcesId}:checkValidCreds", - "id": "bigquerydatatransfer.projects.dataSources.checkValidCreds", - "path": "v1/{+name}:checkValidCreds" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:setEnabled", + "path": "v1/{+name}:setEnabled", + "id": "bigquerydatatransfer.projects.locations.setEnabled" } } } @@ -1091,13 +1112,46 @@ } }, "parameters": { - "alt": { + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", "enum": [ - "json", - "media", - "proto" + "1", + "2" ], - "type": "string", + "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", @@ -1105,7 +1159,13 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string" }, "key": { "location": "query", @@ -1118,15 +1178,15 @@ "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.", "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query", + "description": "Pretty-print response." }, "bearer_token": { "location": "query", @@ -1134,62 +1194,195 @@ "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": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", "location": "query" + } + }, + "version": "v1", + "baseUrl": "https://bigquerydatatransfer.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Transfers data from partner SaaS applications to Google BigQuery on a scheduled, managed basis.", + "servicePath": "", + "basePath": "", + "id": "bigquerydatatransfer:v1", + "documentationLink": "https://cloud.google.com/bigquery/", + "revision": "20170717", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "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": { + "params": { + "description": "Data transfer specific parameters.", + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + } + }, + "datasetRegion": { + "description": "Region in which BigQuery dataset is located. Currently possible values are:\n\"US\" and \"EU\".\n@OutputOnly", + "type": "string" + }, + "displayName": { + "description": "User specified display name for the data transfer.", + "type": "string" + }, + "nextRunTime": { + "format": "google-datetime", + "description": "Next time when data transfer will run. Output only. Applicable\nonly for batch data transfers.\n@OutputOnly", + "type": "string" + }, + "disabled": { + "type": "boolean", + "description": "Is this config disabled. When set to true, no runs are scheduled\nfor a given transfer." + }, + "updateTime": { + "format": "google-datetime", + "description": "Data transfer modification time. Ignored by server on input.\n@OutputOnly", + "type": "string" + }, + "schedule": { + "description": "Data transfer schedule in GROC format.\nIf the data source does not support a custom schedule, this should be\nempty. If it is empty, the default value for the data source will be\nused.\nThe specified times are in UTC.\nExamples of valid GROC 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" + }, + "dataRefreshWindowDays": { + "format": "int32", + "description": "The number of days to look back to automatically refresh the data.\nFor example, if `data_refresh_window_days = 10`, then every day\nBigQuery reingests data for [today-10, today-1], rather than ingesting data\nfor just [today-1].\nOnly valid if the data source supports the feature. Set the value to 0\nto use the default value.", + "type": "integer" + }, + "dataSourceId": { + "description": "Data source id. Cannot be changed once data transfer is created.", + "type": "string" + }, + "status": { + "enumDescriptions": [ + "Status placeholder.", + "Data transfer is inactive.", + "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_STATUS_UNSPECIFIED", + "INACTIVE", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "description": "Status of the most recently updated transfer run.\n@OutputOnly", + "type": "string" + }, + "userId": { + "format": "int64", + "description": "GaiaID of the user on whose behalf transfer is done. Applicable only\nto data sources that do not support service accounts. When set to 0,\nthe data source service account credentials are used.\n@OutputOnly", + "type": "string" + }, + "name": { + "description": "The resource name of the transfer run.\nTransfer run 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 run.", + "type": "string" + }, + "destinationDatasetId": { + "description": "The BigQuery target dataset id.", + "type": "string" + } + }, + "id": "TransferConfig" }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." + "TransferRun": { + "description": "Represents a data transfer run.", + "type": "object", + "properties": { + "dataSourceId": { + "description": "Data source id.\n@OutputOnly", + "type": "string" + }, + "status": { + "enumDescriptions": [ + "Status placeholder.", + "Data transfer is inactive.", + "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_STATUS_UNSPECIFIED", + "INACTIVE", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "description": "Data transfer run status. Ignored for input requests.\n@OutputOnly", + "type": "string" + }, + "destinationDatasetId": { + "description": "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" + }, + "userId": { + "format": "int64", + "description": "The user id for this transfer run.\n@OutputOnly", + "type": "string" + }, + "params": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Data transfer specific parameters.", + "type": "object" + }, + "endTime": { + "format": "google-datetime", + "description": "Time when transfer run ended. Parameter ignored by server for input\nrequests.\n@OutputOnly", + "type": "string" + }, + "datasetRegion": { + "description": "Region in which BigQuery dataset is located. Currently possible values are:\n\"US\" and \"EU\".\n@OutputOnly", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Time when transfer run was started. Parameter ignored by server for input\nrequests.\n@OutputOnly", + "type": "string" + }, + "scheduleTime": { + "format": "google-datetime", + "description": "Minimum time after which a transfer run can be started.", + "type": "string" + }, + "updateTime": { + "format": "google-datetime", + "description": "Last time the data transfer run status was updated.\n@OutputOnly", + "type": "string" + }, + "schedule": { + "description": "Describes the schedule of this transfer run if it was created as part of\na regular schedule. For batch transfer runs that are directly created,\nthis is empty.\nNOTE: the system might choose to delay the schedule depending on the\ncurrent load, so `schedule_time` doesn't always matches this.\n@OutputOnly", + "type": "string" + }, + "runTime": { + "type": "string", + "format": "google-datetime", + "description": "For batch transfer runs, specifies the date and time that\ndata should be ingested." + } + }, + "id": "TransferRun" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://bigquerydatatransfer.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Transfers data from partner SaaS applications to Google BigQuery on a scheduled, managed basis.", - "servicePath": "", - "basePath": "", - "id": "bigquerydatatransfer:v1", - "revision": "20170710", - "documentationLink": "https://cloud.google.com/bigquery/", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { "CheckValidCredsRequest": { "description": "A request to determine whether the user has valid credentials. This method\nis used to limit the number of OAuth popups in the user interface. The\nuser id is inferred from the API call context.\nIf the data source has the Google+ authorization type, this method\nreturns false, as it cannot be determined whether the credentials are\nalready valid merely based on the user id.", "type": "object", @@ -1211,11 +1404,11 @@ "type": "object", "properties": { "createdRuns": { - "description": "The transfer runs that were created.", "items": { "$ref": "TransferRun" }, - "type": "array" + "type": "array", + "description": "The transfer runs that were created." } }, "id": "ScheduleTransferRunsResponse", @@ -1225,29 +1418,29 @@ "description": "The returned list transfer run messages.", "type": "object", "properties": { + "nextPageToken": { + "description": "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.\n@OutputOnly", + "type": "string" + }, "transferMessages": { "description": "The stored pipeline transfer messages.\n@OutputOnly", "items": { "$ref": "TransferMessage" }, "type": "array" - }, - "nextPageToken": { - "description": "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.\n@OutputOnly", - "type": "string" } }, "id": "ListTransferLogsResponse" }, "TransferMessage": { - "description": "Represents a user facing message for a particular data transfer run.", - "type": "object", "properties": { "messageText": { "description": "Message text.", "type": "string" }, "severity": { + "description": "Message severity.", + "type": "string", "enumDescriptions": [ "No severity specified.", "Informational message.", @@ -1259,9 +1452,7 @@ "INFO", "WARNING", "ERROR" - ], - "description": "Message severity.", - "type": "string" + ] }, "messageTime": { "format": "google-datetime", @@ -1269,30 +1460,64 @@ "type": "string" } }, - "id": "TransferMessage" + "id": "TransferMessage", + "description": "Represents a user facing message for a particular data transfer run.", + "type": "object" }, "ListDataSourcesResponse": { + "id": "ListDataSourcesResponse", + "description": "Returns list of supported data sources and their metadata.", + "type": "object", "properties": { "dataSources": { + "description": "List of supported data sources and their transfer settings.", "items": { "$ref": "DataSource" }, - "type": "array", - "description": "List of supported data sources and their transfer settings." + "type": "array" }, "nextPageToken": { "description": "The next-pagination token. For multiple-page list results,\nthis token can be used as the\n`ListDataSourcesRequest.page_token`\nto request the next page of list results.\n@OutputOnly", "type": "string" } - }, - "id": "ListDataSourcesResponse", - "description": "Returns list of supported data sources and their metadata.", - "type": "object" + } }, "DataSourceParameter": { - "description": "Represents a data source parameter with validation rules, so that\nparameters can be rendered in the UI. These parameters are given to us by\nsupported data sources, and include all needed information for rendering\nand validation.\nThus, whoever uses this api can decide to generate either generic ui,\nor custom data source specific forms.", - "type": "object", "properties": { + "fields": { + "description": "When parameter is a record, describes child fields.", + "items": { + "$ref": "DataSourceParameter" + }, + "type": "array" + }, + "maxValue": { + "format": "double", + "description": "For integer and double values specifies maxminum allowed value.", + "type": "number" + }, + "type": { + "enumDescriptions": [ + "Type unspecified.", + "String parameter.", + "Integer parameter (64-bits).\nWill be serialized to json as string.", + "Double precision floating point parameter.", + "Boolean parameter.", + "Record parameter.", + "Page ID for a Google+ Page." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "STRING", + "INTEGER", + "DOUBLE", + "BOOLEAN", + "RECORD", + "PLUS_PAGE" + ], + "description": "Parameter type.", + "type": "string" + }, "recurse": { "description": "If set to true, schema should be taken from the parent with the same\nparameter_id. Only applicable when parameter type is RECORD.", "type": "boolean" @@ -1308,15 +1533,15 @@ }, "type": "array" }, - "validationHelpUrl": { - "type": "string", - "description": "URL to a help document to further explain the naming requirements." - }, "minValue": { "format": "double", "description": "For integer and double values specifies minimum allowed value.", "type": "number" }, + "validationHelpUrl": { + "description": "URL to a help document to further explain the naming requirements.", + "type": "string" + }, "validationRegex": { "description": "Regular expression which can be used for parameter validation.", "type": "string" @@ -1326,8 +1551,8 @@ "type": "string" }, "required": { - "type": "boolean", - "description": "Is parameter required." + "description": "Is parameter required.", + "type": "boolean" }, "repeated": { "description": "Can parameter have multiple values.", @@ -1344,69 +1569,49 @@ "immutable": { "description": "Cannot be changed after initial creation.", "type": "boolean" - }, - "fields": { - "description": "When parameter is a record, describes child fields.", - "items": { - "$ref": "DataSourceParameter" - }, - "type": "array" - }, - "maxValue": { - "format": "double", - "description": "For integer and double values specifies maxminum allowed value.", - "type": "number" - }, - "type": { - "enumDescriptions": [ - "Type unspecified.", - "String parameter.", - "Integer parameter (64-bits).\nWill be serialized to json as string.", - "Double precision floating point parameter.", - "Boolean parameter.", - "Record parameter.", - "Page ID for a Google+ Page." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "STRING", - "INTEGER", - "DOUBLE", - "BOOLEAN", - "RECORD", - "PLUS_PAGE" - ], - "description": "Parameter type.", - "type": "string" } }, - "id": "DataSourceParameter" + "id": "DataSourceParameter", + "description": "Represents a data source parameter with validation rules, so that\nparameters can be rendered in the UI. These parameters are given to us by\nsupported data sources, and include all needed information for rendering\nand validation.\nThus, whoever uses this api can decide to generate either generic ui,\nor custom data source specific forms.", + "type": "object" }, "ListTransferRunsResponse": { + "description": "The returned list of pipelines in the project.", + "type": "object", "properties": { "transferRuns": { - "description": "The stored pipeline transfer runs.\n@OutputOnly", "items": { "$ref": "TransferRun" }, - "type": "array" + "type": "array", + "description": "The stored pipeline transfer runs.\n@OutputOnly" }, "nextPageToken": { - "description": "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.\n@OutputOnly", - "type": "string" + "type": "string", + "description": "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.\n@OutputOnly" } }, - "id": "ListTransferRunsResponse", - "description": "The returned list of pipelines in the project.", + "id": "ListTransferRunsResponse" + }, + "IsEnabledRequest": { + "id": "IsEnabledRequest", + "description": "A request to determine whether data transfer is enabled for the project.", + "type": "object", + "properties": {} + }, + "SetEnabledRequest": { + "properties": { + "enabled": { + "description": "Whether data transfer should be enabled or disabled for the project.", + "type": "boolean" + } + }, + "id": "SetEnabledRequest", + "description": "A request to set whether data transfer is enabled or disabled for a project.", "type": "object" }, - "IsEnabledRequest": { - "description": "A request to determine whether data transfer is enabled for the project.", - "type": "object", - "properties": {}, - "id": "IsEnabledRequest" - }, "ListTransferConfigsResponse": { + "description": "The returned list of pipelines in the project.", "type": "object", "properties": { "transferConfigs": { @@ -1421,53 +1626,28 @@ "type": "string" } }, - "id": "ListTransferConfigsResponse", - "description": "The returned list of pipelines in the project." + "id": "ListTransferConfigsResponse" }, - "SetEnabledRequest": { - "description": "A request to set whether data transfer is enabled or disabled for a project.", - "type": "object", + "IsEnabledResponse": { "properties": { "enabled": { - "description": "Whether data transfer should be enabled or disabled for the project.", + "description": "Indicates whether the project is enabled.", "type": "boolean" } }, - "id": "SetEnabledRequest" - }, - "IsEnabledResponse": { "id": "IsEnabledResponse", "description": "A response to indicate whether data transfer is enabled for the project.", - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "Indicates whether the project is enabled." - } - } + "type": "object" }, "DataSource": { "description": "Represents data source metadata. Metadata is sufficient to\nrender UI and request proper OAuth tokens.", "type": "object", "properties": { - "name": { - "description": "Data source resource name.", - "type": "string" - }, - "scopes": { - "description": "Api auth scopes for which refresh token needs to be obtained. Only valid\nwhen `client_id` is specified. Ignored otherwise. These are scopes needed\nby a data source to prepare data and ingest them into BigQuery,\ne.g., https://www.googleapis.com/auth/bigquery", - "items": { - "type": "string" - }, - "type": "array" - }, "clientId": { - "description": "Data source client id which should be used to receive refresh token.\nWhen not supplied, no offline credentials are populated for data transfer.", - "type": "string" + "type": "string", + "description": "Data source client id which should be used to receive refresh token.\nWhen not supplied, no offline credentials are populated for data transfer." }, "authorizationType": { - "description": "Indicates the type of authorization.", - "type": "string", "enumDescriptions": [ "Type unspecified.", "Use OAuth 2 authorization codes that can be exchanged\nfor a refresh token on the backend.", @@ -1477,11 +1657,13 @@ "AUTHORIZATION_TYPE_UNSPECIFIED", "AUTHORIZATION_CODE", "GOOGLE_PLUS_AUTHORIZATION_CODE" - ] + ], + "description": "Indicates the type of authorization.", + "type": "string" }, "supportsCustomSchedule": { - "type": "boolean", - "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." + "description": "Specifies whether the data source supports a user defined schedule, or\noperates on the default schedule.\nWhen set to `true`, user can override default schedule.", + "type": "boolean" }, "displayName": { "description": "User friendly data source name.", @@ -1521,22 +1703,20 @@ "type": "boolean" }, "statusUpdateDeadlineSeconds": { - "type": "integer", "format": "int32", - "description": "The number of seconds to wait for a status update from the data source\nbefore BigQuery marks the transfer as failed." + "description": "The number of seconds to wait for a status update from the data source\nbefore BigQuery marks the transfer as failed.", + "type": "integer" }, "manualRunsDisabled": { - "type": "boolean", - "description": "Disables backfilling and manual run scheduling\nfor the data source." + "description": "Disables backfilling and manual run scheduling\nfor the data source.", + "type": "boolean" }, "defaultDataRefreshWindowDays": { - "type": "integer", "format": "int32", - "description": "Default data refresh window on days.\nOnly meaningful when `data_refresh_type` = `SLIDING_WINDOW`." + "description": "Default data refresh window on days.\nOnly meaningful when `data_refresh_type` = `SLIDING_WINDOW`.", + "type": "integer" }, "transferType": { - "description": "Transfer type. Currently supports only batch transfers,\nwhich are transfers that use the BigQuery batch APIs (load or\nquery) to ingest the data.", - "type": "string", "enumDescriptions": [ "Invalid or Unknown transfer type placeholder.", "Batch data transfer.", @@ -1546,7 +1726,9 @@ "TRANSFER_TYPE_UNSPECIFIED", "BATCH", "STREAMING" - ] + ], + "description": "Transfer type. Currently supports only batch transfers,\nwhich are transfers that use the BigQuery batch APIs (load or\nquery) to ingest the data.", + "type": "string" }, "description": { "description": "User friendly data source description string.", @@ -1555,11 +1737,23 @@ "dataSourceId": { "description": "Data source id.", "type": "string" + }, + "name": { + "type": "string", + "description": "Data source resource name." + }, + "scopes": { + "description": "Api auth scopes for which refresh token needs to be obtained. Only valid\nwhen `client_id` is specified. Ignored otherwise. These are scopes needed\nby a data source to prepare data and ingest them into BigQuery,\ne.g., https://www.googleapis.com/auth/bigquery", + "items": { + "type": "string" + }, + "type": "array" } }, "id": "DataSource" }, "ScheduleTransferRunsRequest": { + "id": "ScheduleTransferRunsRequest", "description": "A request to schedule transfer runs for a time range.", "type": "object", "properties": { @@ -1573,212 +1767,18 @@ "description": "End time of the range of transfer runs.", "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" - }, - "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": { - "datasetRegion": { - "description": "Region in which BigQuery dataset is located. Currently possible values are:\n\"US\" and \"EU\".\n@OutputOnly", - "type": "string" - }, - "displayName": { - "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": { - "format": "google-datetime", - "description": "Next time when data transfer will run. Output only. Applicable\nonly for batch data transfers.\n@OutputOnly", - "type": "string" - }, - "schedule": { - "description": "Data transfer schedule in GROC format.\nIf the data source does not support a custom schedule, this should be\nempty. If it is empty, the default value for the data source will be\nused.\nThe specified times are in UTC.\nExamples of valid GROC 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" - }, - "updateTime": { - "format": "google-datetime", - "description": "Data transfer modification time. Ignored by server on input.\n@OutputOnly", - "type": "string" - }, - "dataRefreshWindowDays": { - "format": "int32", - "description": "The number of days to look back to automatically refresh the data.\nFor example, if `data_refresh_window_days = 10`, then every day\nBigQuery reingests data for [today-10, today-1], rather than ingesting data\nfor just [today-1].\nOnly valid if the data source supports the feature. Set the value to 0\nto use the default value.", - "type": "integer" - }, - "dataSourceId": { - "description": "Data source id. Cannot be changed once data transfer is created.", - "type": "string" - }, - "status": { - "description": "Status of the most recently updated transfer run.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Status placeholder.", - "Data transfer is inactive.", - "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_STATUS_UNSPECIFIED", - "INACTIVE", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ] - }, - "userId": { - "format": "int64", - "description": "GaiaID of the user on whose behalf transfer is done. Applicable only\nto data sources that do not support service accounts. When set to 0,\nthe data source service account credentials are used.\n@OutputOnly", - "type": "string" - }, - "destinationDatasetId": { - "description": "The BigQuery target dataset id.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The resource name of the transfer run.\nTransfer run 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 run." - }, - "params": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "Data transfer specific parameters.", - "type": "object" - } - }, - "id": "TransferConfig" - }, - "TransferRun": { - "description": "Represents a data transfer run.", - "type": "object", - "properties": { - "dataSourceId": { - "description": "Data source id.\n@OutputOnly", - "type": "string" - }, - "status": { - "description": "Data transfer run status. Ignored for input requests.\n@OutputOnly", - "type": "string", - "enumDescriptions": [ - "Status placeholder.", - "Data transfer is inactive.", - "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_STATUS_UNSPECIFIED", - "INACTIVE", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ] - }, - "destinationDatasetId": { - "description": "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" - }, - "userId": { - "format": "int64", - "description": "The user id for this transfer run.\n@OutputOnly", - "type": "string" - }, - "params": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Data transfer specific parameters.", - "type": "object" - }, - "endTime": { - "format": "google-datetime", - "description": "Time when transfer run ended. Parameter ignored by server for input\nrequests.\n@OutputOnly", - "type": "string" - }, - "datasetRegion": { - "description": "Region in which BigQuery dataset is located. Currently possible values are:\n\"US\" and \"EU\".\n@OutputOnly", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "Time when transfer run was started. Parameter ignored by server for input\nrequests.\n@OutputOnly", - "type": "string" - }, - "scheduleTime": { - "format": "google-datetime", - "description": "Minimum time after which a transfer run can be started.", - "type": "string" - }, - "schedule": { - "description": "Describes the schedule of this transfer run if it was created as part of\na regular schedule. For batch transfer runs that are directly created,\nthis is empty.\nNOTE: the system might choose to delay the schedule depending on the\ncurrent load, so `schedule_time` doesn't always matches this.\n@OutputOnly", - "type": "string" - }, - "updateTime": { - "format": "google-datetime", - "description": "Last time the data transfer run status was updated.\n@OutputOnly", - "type": "string" - }, - "runTime": { - "type": "string", - "format": "google-datetime", - "description": "For batch transfer runs, specifies the date and time that\ndata should be ingested." - } - }, - "id": "TransferRun" } }, + "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": "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", - "title": "BigQuery Data Transfer Service API" + } } diff --git a/DiscoveryJson/classroom_v1.json b/DiscoveryJson/classroom_v1.json index c1348cd0ca..e2f12849ea 100644 --- a/DiscoveryJson/classroom_v1.json +++ b/DiscoveryJson/classroom_v1.json @@ -1,18 +1,35 @@ { + "protocol": "rest", + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, "version": "v1", "baseUrl": "https://classroom.googleapis.com/", "auth": { "oauth2": { "scopes": { + "https://www.googleapis.com/auth/classroom.profile.photos": { + "description": "View the profile photos of people in your classes" + }, + "https://www.googleapis.com/auth/classroom.rosters.readonly": { + "description": "View your Google Classroom class rosters" + }, + "https://www.googleapis.com/auth/classroom.guardianlinks.students": { + "description": "View and manage guardians for students in your Google Classroom classes" + }, + "https://www.googleapis.com/auth/classroom.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" }, + "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" }, @@ -36,18 +53,6 @@ }, "https://www.googleapis.com/auth/classroom.courses.readonly": { "description": "View your Google Classroom classes" - }, - "https://www.googleapis.com/auth/classroom.profile.photos": { - "description": "View the profile photos of people in your classes" - }, - "https://www.googleapis.com/auth/classroom.rosters.readonly": { - "description": "View your Google Classroom class rosters" - }, - "https://www.googleapis.com/auth/classroom.guardianlinks.students": { - "description": "View and manage guardians for students in your Google Classroom classes" - }, - "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly": { - "description": "View your course work and grades in Google Classroom" } } } @@ -60,56 +65,32 @@ "ownerDomain": "google.com", "name": "classroom", "batchPath": "batch", - "id": "classroom:v1", + "revision": "20170717", "documentationLink": "https://developers.google.com/classroom/", - "revision": "20170712", + "id": "classroom:v1", "title": "Google Classroom API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "invitations": { "methods": { - "accept": { - "response": { - "$ref": "Empty" - }, + "delete": { + "httpMethod": "DELETE", "parameterOrder": [ "id" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "parameters": { - "id": { - "type": "string", - "required": true, - "location": "path", - "description": "Identifier of the invitation to accept." - } - }, - "flatPath": "v1/invitations/{id}:accept", - "id": "classroom.invitations.accept", - "path": "v1/invitations/{id}: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." - }, - "delete": { - "httpMethod": "DELETE", "response": { "$ref": "Empty" }, - "parameterOrder": [ - "id" - ], "scopes": [ "https://www.googleapis.com/auth/classroom.rosters" ], "parameters": { "id": { + "description": "Identifier of the invitation to delete.", "type": "string", "required": true, - "location": "path", - "description": "Identifier of the invitation to delete." + "location": "path" } }, "flatPath": "v1/invitations/{id}", @@ -118,16 +99,11 @@ "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." }, "list": { - "description": "Returns a list of invitations that the requesting user is permitted to\nview, restricted to those that match the list request.\n\n*Note:* At least one of `user_id` or `course_id` must be supplied. Both\nfields can be supplied.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` for access errors.", "response": { "$ref": "ListInvitationsResponse" }, - "httpMethod": "GET", "parameterOrder": [], - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], + "httpMethod": "GET", "parameters": { "pageSize": { "format": "int32", @@ -136,9 +112,9 @@ "location": "query" }, "courseId": { + "location": "query", "description": "Restricts returned invitations to those for a course with the specified\nidentifier.", - "type": "string", - "location": "query" + "type": "string" }, "pageToken": { "description": "nextPageToken\nvalue returned from a previous\nlist call, indicating\nthat the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", @@ -146,18 +122,21 @@ "location": "query" }, "userId": { - "description": "Restricts returned invitations to those for a specific user. The identifier\ncan be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "type": "string", - "location": "query" + "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" } }, + "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" + "path": "v1/invitations", + "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." }, "get": { - "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.", "response": { "$ref": "Invitation" @@ -168,19 +147,28 @@ "httpMethod": "GET", "parameters": { "id": { + "location": "path", "description": "Identifier of the invitation to return.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly" ], - "flatPath": "v1/invitations/{id}" + "flatPath": "v1/invitations/{id}", + "id": "classroom.invitations.get", + "path": "v1/invitations/{id}" }, "create": { + "flatPath": "v1/invitations", + "id": "classroom.invitations.create", + "path": "v1/invitations", + "request": { + "$ref": "Invitation" + }, + "description": "Creates an invitation. Only one invitation for a user and course may exist\nat a time. Delete and re-create an invitation to make changes.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ninvitations for this course or for access errors.\n* `NOT_FOUND` if the course or the user does not exist.\n* `FAILED_PRECONDITION` if the requested user's account is disabled or if\nthe user already has this role or a role with greater permissions.\n* `ALREADY_EXISTS` if an invitation for the specified user and course\nalready exists.", "response": { "$ref": "Invitation" }, @@ -189,27 +177,42 @@ "scopes": [ "https://www.googleapis.com/auth/classroom.rosters" ], - "parameters": {}, - "flatPath": "v1/invitations", - "id": "classroom.invitations.create", - "path": "v1/invitations", - "request": { - "$ref": "Invitation" + "parameters": {} + }, + "accept": { + "parameters": { + "id": { + "location": "path", + "description": "Identifier of the invitation to accept.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], + "flatPath": "v1/invitations/{id}:accept", + "id": "classroom.invitations.accept", + "path": "v1/invitations/{id}: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" }, - "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." + "parameterOrder": [ + "id" + ], + "httpMethod": "POST" } } }, "userProfiles": { "methods": { "get": { - "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.", - "httpMethod": "GET", "response": { "$ref": "UserProfile" }, + "httpMethod": "GET", "parameterOrder": [ "userId" ], @@ -221,65 +224,36 @@ ], "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", "type": "string", - "required": true + "required": true, + "location": "path", + "description": "Identifier of the profile to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user" } }, - "flatPath": "v1/userProfiles/{userId}" + "flatPath": "v1/userProfiles/{userId}", + "id": "classroom.userProfiles.get", + "path": "v1/userProfiles/{userId}" } }, "resources": { "guardianInvitations": { "methods": { - "create": { - "id": "classroom.userProfiles.guardianInvitations.create", - "path": "v1/userProfiles/{studentId}/guardianInvitations", - "request": { - "$ref": "GuardianInvitation" - }, - "description": "Creates a guardian invitation, and sends an email to the guardian asking\nthem to confirm that they are the student's guardian.\n\nOnce the guardian accepts the invitation, their `state` will change to\n`COMPLETED` and they will start receiving guardian notifications. A\n`Guardian` resource will also be created to represent the active guardian.\n\nThe request object must have the `student_id` and\n`invited_email_address` fields set. Failing to set these fields, or\nsetting any other fields in the request, will result in an error.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if the guardian in question has already rejected\n too many requests for that student, if guardians are not enabled for the\n domain in question, or for other access errors.\n* `RESOURCE_EXHAUSTED` if the student or guardian has exceeded the guardian\n link limit.\n* `INVALID_ARGUMENT` if the guardian email address is not valid (for\n example, if it is too long), or if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API). This error will also be returned if read-only fields are set,\n or if the `state` field is set to to a value other than `PENDING`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student.\n* `ALREADY_EXISTS` if there is already a pending guardian invitation for\n the student and `invited_email_address` provided, or if the provided\n `invited_email_address` matches the Google account of an existing\n `Guardian` for this user.", - "response": { - "$ref": "GuardianInvitation" - }, - "parameterOrder": [ - "studentId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.guardianlinks.students" - ], - "parameters": { - "studentId": { - "location": "path", - "description": "ID of the student (in standard format)", - "type": "string", - "required": true - } - }, - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations" - }, "patch": { - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", - "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", - "id": "classroom.userProfiles.guardianInvitations.patch", - "request": { + "response": { "$ref": "GuardianInvitation" }, - "description": "Modifies a guardian invitation.\n\nCurrently, the only valid modification is to change the `state` from\n`PENDING` to `COMPLETE`. This has the effect of withdrawing the invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if guardians are not enabled for the domain in question\n or for other access errors.\n* `FAILED_PRECONDITION` if the guardian link is not in the `PENDING` state.\n* `INVALID_ARGUMENT` if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API), or if the passed `GuardianInvitation` has a `state` other than\n `COMPLETE`, or if it modifies fields other than `state`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student, or if the `id` field does not\n refer to a guardian invitation known to Classroom.", - "httpMethod": "PATCH", "parameterOrder": [ "studentId", "invitationId" ], - "response": { - "$ref": "GuardianInvitation" - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.guardianlinks.students" - ], + "httpMethod": "PATCH", "parameters": { + "studentId": { + "type": "string", + "required": true, + "location": "path", + "description": "The ID of the student whose guardian invitation is to be modified." + }, "updateMask": { "location": "query", "format": "google-fieldmask", @@ -287,24 +261,26 @@ "type": "string" }, "invitationId": { - "location": "path", "description": "The `id` field of the `GuardianInvitation` to be modified.", "type": "string", - "required": true - }, - "studentId": { - "location": "path", - "description": "The ID of the student whose guardian invitation is to be modified.", - "type": "string", - "required": true + "required": true, + "location": "path" } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.guardianlinks.students" + ], + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "id": "classroom.userProfiles.guardianInvitations.patch", + "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "description": "Modifies a guardian invitation.\n\nCurrently, the only valid modification is to change the `state` from\n`PENDING` to `COMPLETE`. This has the effect of withdrawing the invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if guardians are not enabled for the domain in question\n or for other access errors.\n* `FAILED_PRECONDITION` if the guardian link is not in the `PENDING` state.\n* `INVALID_ARGUMENT` if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API), or if the passed `GuardianInvitation` has a `state` other than\n `COMPLETE`, or if it modifies fields other than `state`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student, or if the `id` field does not\n refer to a guardian invitation known to Classroom.", + "request": { + "$ref": "GuardianInvitation" } }, "get": { - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", - "id": "classroom.userProfiles.guardianInvitations.get", - "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", "description": "Returns a specific guardian invitation.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\n guardian invitations for the student identified by the `student_id`, if\n guardians are not enabled for the domain in question, or for other\n access errors.\n* `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot\n be recognized (it is not an email address, nor a `student_id` from the\n API, nor the literal string `me`).\n* `NOT_FOUND` if Classroom cannot find any record of the given student or\n `invitation_id`. May also be returned if the student exists, but the\n requesting user does not have access to see that student.", + "httpMethod": "GET", "response": { "$ref": "GuardianInvitation" }, @@ -312,7 +288,6 @@ "studentId", "invitationId" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students", "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" @@ -325,17 +300,17 @@ "required": true }, "studentId": { + "location": "path", "description": "The ID of the student whose guardian invitation is being requested.", "type": "string", - "required": true, - "location": "path" + "required": true } - } + }, + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "id": "classroom.userProfiles.guardianInvitations.get" }, "list": { - "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", "parameterOrder": [ "studentId" @@ -343,16 +318,12 @@ "response": { "$ref": "ListGuardianInvitationsResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.guardianlinks.students", - "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" - ], "parameters": { "studentId": { - "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.", "type": "string", - "required": true + "required": true, + "location": "path" }, "pageToken": { "location": "query", @@ -360,76 +331,140 @@ "type": "string" }, "pageSize": { - "location": "query", "format": "int32", "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.", - "type": "integer" + "type": "integer", + "location": "query" }, "states": { - "type": "string", - "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." + "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" }, "invitedEmailAddress": { + "location": "query", "description": "If specified, only results with the specified `invited_email_address`\nwill be returned.", - "type": "string", - "location": "query" + "type": "string" } }, - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations" - } - } - }, - "guardians": { - "methods": { - "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" - }, - "parameterOrder": [ - "studentId", - "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": { - "guardianId": { - "description": "The `id` field from a `Guardian`.", - "type": "string", - "required": true, - "location": "path" - }, - "studentId": { - "description": "The student whose guardian is being requested. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string", + "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." + }, + "create": { + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", + "id": "classroom.userProfiles.guardianInvitations.create", + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "request": { + "$ref": "GuardianInvitation" + }, + "description": "Creates a guardian invitation, and sends an email to the guardian asking\nthem to confirm that they are the student's guardian.\n\nOnce the guardian accepts the invitation, their `state` will change to\n`COMPLETED` and they will start receiving guardian notifications. A\n`Guardian` resource will also be created to represent the active guardian.\n\nThe request object must have the `student_id` and\n`invited_email_address` fields set. Failing to set these fields, or\nsetting any other fields in the request, will result in an error.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the current user does not have permission to\n manage guardians, if the guardian in question has already rejected\n too many requests for that student, if guardians are not enabled for the\n domain in question, or for other access errors.\n* `RESOURCE_EXHAUSTED` if the student or guardian has exceeded the guardian\n link limit.\n* `INVALID_ARGUMENT` if the guardian email address is not valid (for\n example, if it is too long), or if the format of the student ID provided\n cannot be recognized (it is not an email address, nor a `user_id` from\n this API). This error will also be returned if read-only fields are set,\n or if the `state` field is set to to a value other than `PENDING`.\n* `NOT_FOUND` if the student ID provided is a valid student ID, but\n Classroom has no record of that student.\n* `ALREADY_EXISTS` if there is already a pending guardian invitation for\n the student and `invited_email_address` provided, or if the provided\n `invited_email_address` matches the Google account of an existing\n `Guardian` for this user.", + "response": { + "$ref": "GuardianInvitation" + }, + "parameterOrder": [ + "studentId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.guardianlinks.students" + ], + "parameters": { + "studentId": { + "location": "path", + "description": "ID of the student (in standard format)", + "type": "string", + "required": true + } + } + } + } + }, + "guardians": { + "methods": { + "delete": { + "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`.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "studentId", + "guardianId" + ], + "scopes": [ + "https://www.googleapis.com/auth/classroom.guardianlinks.students" + ], + "parameters": { + "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", + "type": "string", + "required": true + }, + "guardianId": { + "location": "path", + "description": "The `id` field from a `Guardian`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}" + }, + "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`.", + "httpMethod": "GET", + "response": { + "$ref": "Guardian" + }, + "parameterOrder": [ + "studentId", + "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" + ], + "parameters": { + "studentId": { + "location": "path", + "description": "The student whose guardian is being requested. One of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "type": "string", + "required": true + }, + "guardianId": { + "description": "The `id` field from a `Guardian`.", + "type": "string", "required": true, "location": "path" } }, "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.get", - "path": "v1/userProfiles/{studentId}/guardians/{guardianId}" + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "id": "classroom.userProfiles.guardians.get" }, "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.", - "httpMethod": "GET", - "parameterOrder": [ - "studentId" - ], "response": { "$ref": "ListGuardiansResponse" }, + "parameterOrder": [ + "studentId" + ], + "httpMethod": "GET", "parameters": { "studentId": { "type": "string", @@ -438,9 +473,9 @@ "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." }, "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.", - "type": "string" + "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token." }, "pageSize": { "location": "query", @@ -460,39 +495,9 @@ "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" ], "flatPath": "v1/userProfiles/{studentId}/guardians", + "id": "classroom.userProfiles.guardians.list", "path": "v1/userProfiles/{studentId}/guardians", - "id": "classroom.userProfiles.guardians.list" - }, - "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`.", - "httpMethod": "DELETE", - "parameterOrder": [ - "studentId", - "guardianId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "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", - "type": "string", - "required": true - }, - "guardianId": { - "description": "The `id` field from a `Guardian`.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.guardianlinks.students" - ], - "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.delete" + "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." } } } @@ -500,8 +505,25 @@ }, "courses": { "methods": { + "create": { + "id": "classroom.courses.create", + "path": "v1/courses", + "description": "Creates a course.\n\nThe user specified in `ownerId` is the owner of the created course\nand added as a teacher.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ncourses or for access errors.\n* `NOT_FOUND` if the primary teacher is not a valid user.\n* `FAILED_PRECONDITION` if the course owner's account is disabled or for\nthe following request errors:\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if an alias was specified in the `id` and\nalready exists.", + "request": { + "$ref": "Course" + }, + "response": { + "$ref": "Course" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ], + "flatPath": "v1/courses" + }, "get": { - "description": "Returns a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or for access errors.\n* `NOT_FOUND` if no course exists with the requested ID.", "response": { "$ref": "Course" }, @@ -523,7 +545,8 @@ }, "flatPath": "v1/courses/{id}", "id": "classroom.courses.get", - "path": "v1/courses/{id}" + "path": "v1/courses/{id}", + "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." }, "patch": { "response": { @@ -535,16 +558,16 @@ "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.", "type": "string", - "required": true + "required": true, + "location": "path" }, "updateMask": { + "location": "query", "format": "google-fieldmask", "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\nWhen set in a query parameter, this field should be specified as\n\n`updateMask=\u003cfield1\u003e,\u003cfield2\u003e,...`", - "type": "string", - "location": "query" + "type": "string" } }, "scopes": [ @@ -566,80 +589,68 @@ "id" ], "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], "parameters": { "id": { - "type": "string", - "required": true, "location": "path", - "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." + "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ], "flatPath": "v1/courses/{id}", "id": "classroom.courses.update", "path": "v1/courses/{id}", + "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" - }, - "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" + } }, "delete": { "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, "parameterOrder": [ "id" ], - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], + "response": { + "$ref": "Empty" + }, "parameters": { "id": { - "location": "path", - "description": "Identifier of the course to delete.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "location": "path", + "description": "Identifier of the course to delete.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." } }, + "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": { - "path": "v1/courses", - "id": "classroom.courses.list", - "description": "Returns a list of courses that the requesting user is permitted to view,\nrestricted to those that match the request.\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.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListCoursesResponse" - }, "parameters": { "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" + "type": "string" }, "pageToken": { - "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request must be\notherwise identical to the one that resulted in this token.", "type": "string", - "location": "query" + "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." }, "pageSize": { - "type": "integer", - "location": "query", "format": "int32", - "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." + "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.", + "type": "integer", + "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", "ACTIVE", @@ -647,7 +658,11 @@ "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, + "location": "query" }, "teacherId": { "description": "Restricts returned courses to those having a teacher with the specified\nidentifier. The identifier can be one of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", @@ -659,78 +674,42 @@ "https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly" ], - "flatPath": "v1/courses" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Course" - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "parameters": {}, "flatPath": "v1/courses", "path": "v1/courses", - "id": "classroom.courses.create", - "request": { - "$ref": "Course" - }, - "description": "Creates a course.\n\nThe user specified in `ownerId` is the owner of the created course\nand added as a teacher.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create\ncourses or for access errors.\n* `NOT_FOUND` if the primary teacher is not a valid user.\n* `FAILED_PRECONDITION` if the course owner's account is disabled or for\nthe following request errors:\n * UserGroupsMembershipLimitReached\n* `ALREADY_EXISTS` if an alias was specified in the `id` and\nalready exists." + "id": "classroom.courses.list", + "description": "Returns a list of courses that the requesting user is permitted to view,\nrestricted to those that match the request.\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.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListCoursesResponse" + } } }, "resources": { "aliases": { "methods": { - "create": { - "flatPath": "v1/courses/{courseId}/aliases", - "id": "classroom.courses.aliases.create", - "path": "v1/courses/{courseId}/aliases", - "request": { - "$ref": "CourseAlias" - }, - "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).", + "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": "CourseAlias" + "$ref": "Empty" }, "parameterOrder": [ - "courseId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" + "courseId", + "alias" ], + "httpMethod": "DELETE", "parameters": { - "courseId": { + "alias": { "location": "path", - "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier.", "type": "string", "required": true - } - } - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "alias" - ], - "httpMethod": "DELETE", - "parameters": { + }, "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.", "type": "string", "required": true - }, - "alias": { - "location": "path", - "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier.", - "type": "string", - "required": true } }, "scopes": [ @@ -738,83 +717,75 @@ ], "flatPath": "v1/courses/{courseId}/aliases/{alias}", "id": "classroom.courses.aliases.delete", - "path": "v1/courses/{courseId}/aliases/{alias}", - "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)." + "path": "v1/courses/{courseId}/aliases/{alias}" }, "list": { - "id": "classroom.courses.aliases.list", - "path": "v1/courses/{courseId}/aliases", "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" - }, + "httpMethod": "GET", "parameterOrder": [ "courseId" ], - "httpMethod": "GET", + "response": { + "$ref": "ListCourseAliasesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly" ], "parameters": { + "courseId": { + "location": "path", + "description": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true + }, "pageToken": { "description": "nextPageToken\nvalue returned from a previous\nlist call,\nindicating that the subsequent page of results should be returned.\n\nThe list request\nmust be otherwise identical to the one that resulted in this token.", "type": "string", "location": "query" }, "pageSize": { + "location": "query", "format": "int32", "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.", - "type": "integer", - "location": "query" - }, - "courseId": { - "type": "string", - "required": true, - "location": "path", - "description": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." + "type": "integer" } }, - "flatPath": "v1/courses/{courseId}/aliases" - } - } - }, - "students": { - "methods": { + "flatPath": "v1/courses/{courseId}/aliases", + "path": "v1/courses/{courseId}/aliases", + "id": "classroom.courses.aliases.list" + }, "create": { + "description": "Creates an alias for a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to create the\nalias or for access errors.\n* `NOT_FOUND` if the course does not exist.\n* `ALREADY_EXISTS` if the alias already exists.\n* `FAILED_PRECONDITION` if the alias requested does not make sense for the\n requesting user or course (for example, if a user not in a domain\n attempts to access a domain-scoped alias).", + "request": { + "$ref": "CourseAlias" + }, "response": { - "$ref": "Student" + "$ref": "CourseAlias" }, "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": { - "description": "Identifier of the course to create the student in.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "location": "path", + "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true, - "location": "path" - }, - "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" + "required": true } }, - "flatPath": "v1/courses/{courseId}/students", - "id": "classroom.courses.students.create", - "path": "v1/courses/{courseId}/students", - "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.courses" + ], + "flatPath": "v1/courses/{courseId}/aliases", + "id": "classroom.courses.aliases.create", + "path": "v1/courses/{courseId}/aliases" + } + } + }, + "students": { + "methods": { "delete": { "response": { "$ref": "Empty" @@ -824,6 +795,9 @@ "userId" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], "parameters": { "courseId": { "location": "path", @@ -832,28 +806,28 @@ "required": true }, "userId": { + "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", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "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." }, "list": { - "httpMethod": "GET", - "parameterOrder": [ - "courseId" - ], + "id": "classroom.courses.students.list", + "path": "v1/courses/{courseId}/students", + "description": "Returns a list of students of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", "response": { "$ref": "ListStudentsResponse" }, + "parameterOrder": [ + "courseId" + ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/classroom.profile.emails", "https://www.googleapis.com/auth/classroom.profile.photos", @@ -862,15 +836,15 @@ ], "parameters": { "pageToken": { + "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.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { + "type": "integer", "location": "query", "format": "int32", - "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", - "type": "integer" + "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results." }, "courseId": { "location": "path", @@ -879,36 +853,9 @@ "required": true } }, - "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." + "flatPath": "v1/courses/{courseId}/students" }, "get": { - "parameters": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "type": "string", - "required": true - }, - "userId": { - "description": "Identifier of the student to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.profile.emails", - "https://www.googleapis.com/auth/classroom.profile.photos", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ], - "flatPath": "v1/courses/{courseId}/students/{userId}", - "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.", "response": { "$ref": "Student" }, @@ -916,225 +863,103 @@ "courseId", "userId" ], - "httpMethod": "GET" - } - } - }, - "courseWork": { - "methods": { - "delete": { - "description": "Deletes a course work.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the requesting user is not permitted\nto delete the requested course or for access errors.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if no course exists with the requested ID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "id" - ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" + "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": { - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "userId": { + "description": "Identifier of the student to return. The identifier can be one of the\nfollowing:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "type": "string", - "required": true + "required": true, + "location": "path" }, - "id": { + "courseId": { "location": "path", - "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", "required": true } }, - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.delete", - "path": "v1/courses/{courseId}/courseWork/{id}" + "flatPath": "v1/courses/{courseId}/students/{userId}", + "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." }, - "list": { - "description": "Returns a list of course work that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` course work. Course teachers\nand domain administrators may view all course work.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access\nthe requested course or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.", + "create": { + "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.", + "request": { + "$ref": "Student" + }, "response": { - "$ref": "ListCourseWorkResponse" + "$ref": "Student" }, "parameterOrder": [ "courseId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.me.readonly", - "https://www.googleapis.com/auth/classroom.coursework.students", - "https://www.googleapis.com/auth/classroom.coursework.students.readonly" - ], + "httpMethod": "POST", "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" - }, - "orderBy": { - "type": "string", - "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`" - }, - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, - "courseWorkStates": { + "enrollmentCode": { "type": "string", - "repeated": true, "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." + "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." }, "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "Identifier of the course to create the student in.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." } }, - "flatPath": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.list", - "path": "v1/courses/{courseId}/courseWork" - }, - "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.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.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "type": "string", - "required": true - }, - "id": { - "location": "path", - "description": "Identifier of the course work.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "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.", - "response": { - "$ref": "CourseWork" - }, - "httpMethod": "GET", - "parameterOrder": [ - "courseId", - "id" - ] - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "courseId", - "id" - ], - "response": { - "$ref": "CourseWork" - }, - "parameters": { - "courseId": { - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "type": "string", - "required": true, - "location": "path" - }, - "id": { - "location": "path", - "description": "Identifier of the course work.", - "type": "string", - "required": true - }, - "updateMask": { - "format": "google-fieldmask", - "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* `title`\n* `description`\n* `state`\n* `due_date`\n* `due_time`\n* `max_points`\n* `scheduled_time`\n* `submission_modification_mode`", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "path": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.patch", - "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" - } - }, - "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" - }, - "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.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.create", - "path": "v1/courses/{courseId}/courseWork" + "flatPath": "v1/courses/{courseId}/students", + "id": "classroom.courses.students.create", + "path": "v1/courses/{courseId}/students" } - }, + } + }, + "courseWork": { "resources": { "studentSubmissions": { "methods": { "turnIn": { - "httpMethod": "POST", + "id": "classroom.courses.courseWork.studentSubmissions.turnIn", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}: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" ], - "response": { - "$ref": "Empty" - }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ], "parameters": { "courseWorkId": { + "description": "Identifier of the course work.", "type": "string", "required": true, - "location": "path", - "description": "Identifier of the course work." + "location": "path" }, "courseId": { + "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true, - "location": "path" + "required": true }, "id": { "location": "path", @@ -1143,18 +968,12 @@ "required": true } }, - "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" - } + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn" }, "modifyAttachments": { + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", "request": { "$ref": "ModifyAttachmentsRequest" }, @@ -1173,30 +992,36 @@ "https://www.googleapis.com/auth/classroom.coursework.students" ], "parameters": { + "courseWorkId": { + "description": "Identifier of the course work.", + "type": "string", + "required": true, + "location": "path" + }, "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "location": "path" }, "id": { "location": "path", "description": "Identifier of the student submission.", "type": "string", "required": true - }, - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "type": "string", - "required": true } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", - "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments" + } }, "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.", + "httpMethod": "GET", + "response": { + "$ref": "ListStudentSubmissionsResponse" + }, + "parameterOrder": [ + "courseId", + "courseWorkId" + ], "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", @@ -1206,17 +1031,6 @@ "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" ], "parameters": { - "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" - }, - "courseWorkId": { - "description": "Identifer 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.", - "type": "string", - "required": true, - "location": "path" - }, "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", @@ -1224,14 +1038,14 @@ "location": "path" }, "late": { + "type": "string", + "location": "query", "enum": [ "LATE_VALUES_UNSPECIFIED", "LATE_ONLY", "NOT_LATE_ONLY" ], - "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" + "description": "Requested lateness value. If specified, returned student submissions are\nrestricted by the requested value.\nIf unspecified, submissions are returned regardless of `late` value." }, "pageToken": { "location": "query", @@ -1239,14 +1053,12 @@ "type": "string" }, "pageSize": { - "format": "int32", - "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.", "type": "integer", - "location": "query" + "location": "query", + "format": "int32", + "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." }, "states": { - "repeated": true, - "location": "query", "enum": [ "SUBMISSION_STATE_UNSPECIFIED", "NEW", @@ -1256,51 +1068,45 @@ "RECLAIMED_BY_STUDENT" ], "description": "Requested submission states. If specified, returned student submissions\nmatch one of the specified submission states.", + "type": "string", + "repeated": true, + "location": "query" + }, + "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" + }, + "courseWorkId": { + "type": "string", + "required": true, + "location": "path", + "description": "Identifer 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." } }, "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", - "id": "classroom.courses.courseWork.studentSubmissions.list", "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", - "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.", - "response": { - "$ref": "ListStudentSubmissionsResponse" - }, - "parameterOrder": [ - "courseId", - "courseWorkId" - ], - "httpMethod": "GET" + "id": "classroom.courses.courseWork.studentSubmissions.list" }, "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.", - "httpMethod": "GET", - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "response": { - "$ref": "StudentSubmission" - }, "parameters": { - "courseWorkId": { - "description": "Identifier of the course work.", - "type": "string", - "required": true, - "location": "path" - }, "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "location": "path" }, "id": { - "description": "Identifier of the student submission.", "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "Identifier of the student submission." + }, + "courseWorkId": { + "location": "path", + "description": "Identifier of the course work.", + "type": "string", + "required": true } }, "scopes": [ @@ -1313,13 +1119,19 @@ ], "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "id": "classroom.courses.courseWork.studentSubmissions.get" - }, - "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": { + "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.", + "httpMethod": "GET", + "response": { "$ref": "StudentSubmission" }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ] + }, + "patch": { "httpMethod": "PATCH", "parameterOrder": [ "courseId", @@ -1349,10 +1161,10 @@ "location": "path" }, "id": { + "description": "Identifier of the student submission.", "type": "string", "required": true, - "location": "path", - "description": "Identifier of the student submission." + "location": "path" } }, "scopes": [ @@ -1361,13 +1173,13 @@ ], "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", - "id": "classroom.courses.courseWork.studentSubmissions.patch" + "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" + } }, "return": { - "description": "Returns a student submission.\n\nReturning a student submission transfers ownership of attached Drive\nfiles to the student and may also update the submission state.\nUnlike the Classroom application, returning a student submission does not\nset assignedGrade to the draftGrade value.\n\nOnly a teacher of the course that contains the requested student submission\nmay call this method.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course or course work, return the requested student submission,\nor for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", - "request": { - "$ref": "ReturnStudentSubmissionRequest" - }, "response": { "$ref": "Empty" }, @@ -1377,13 +1189,10 @@ "id" ], "httpMethod": "POST", + "scopes": [ + "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.", - "type": "string", - "required": true - }, "id": { "location": "path", "description": "Identifier of the student submission.", @@ -1391,138 +1200,262 @@ "required": true }, "courseWorkId": { + "type": "string", + "required": true, "location": "path", - "description": "Identifier of the course work.", + "description": "Identifier of the course work." + }, + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "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" + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}: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." }, "reclaim": { - "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" - }, - "response": { - "$ref": "Empty" - }, + "httpMethod": "POST", "parameterOrder": [ "courseId", "courseWorkId", "id" ], - "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, "parameters": { + "courseWorkId": { + "description": "Identifier of the course work.", + "type": "string", + "required": true, + "location": "path" + }, "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "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.", "type": "string", - "required": true - }, - "courseWorkId": { + "required": true, "location": "path", - "description": "Identifier of the course work.", - "type": "string", - "required": true + "description": "Identifier of the student submission." } }, "scopes": [ "https://www.googleapis.com/auth/classroom.coursework.me" - ] + ], + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "id": "classroom.courses.courseWork.studentSubmissions.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" + } } } } - } - }, - "teachers": { + }, "methods": { + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "courseId" + ], + "response": { + "$ref": "CourseWork" + }, + "scopes": [ + "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.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/courses/{courseId}/courseWork", + "path": "v1/courses/{courseId}/courseWork", + "id": "classroom.courses.courseWork.create", + "request": { + "$ref": "CourseWork" + }, + "description": "Creates course work.\n\nThe resulting course work (and corresponding student submissions) are\nassociated with the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\nmake the request. Classroom API requests to modify course work and student\nsubmissions must be made with an OAuth client ID from the associated\nDeveloper Console project.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to access the\nrequested course, create course work in the requested course, share a\nDrive attachment, or for access errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the requested course does not exist.\n* `FAILED_PRECONDITION` for the following request error:\n * AttachmentNotVisible" + }, + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "courseId", + "id" + ], + "parameters": { + "courseId": { + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true + }, + "id": { + "location": "path", + "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ], + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "path": "v1/courses/{courseId}/courseWork/{id}", + "id": "classroom.courses.courseWork.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." + }, "list": { - "description": "Returns a list of teachers of this course that the requester\nis permitted to view.\n\nThis method returns the following error codes:\n\n* `NOT_FOUND` if the course does not exist.\n* `PERMISSION_DENIED` for access errors.", "response": { - "$ref": "ListTeachersResponse" + "$ref": "ListCourseWorkResponse" }, "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": { + "courseId": { + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true + }, "pageToken": { "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." + "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." + }, + "orderBy": { + "location": "query", + "description": "Optional sort ordering for results. A comma-separated list of fields with\nan optional sort direction keyword. Supported fields are `updateTime`\nand `dueDate`. Supported direction keywords are `asc` and `desc`.\nIf not specified, `updateTime desc` is the default behavior.\nExamples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc`", + "type": "string" }, "pageSize": { + "location": "query", "format": "int32", - "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", - "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.", + "type": "integer" }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "courseWorkStates": { "type": "string", - "required": true + "repeated": true, + "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." } }, - "flatPath": "v1/courses/{courseId}/teachers", - "id": "classroom.courses.teachers.list", - "path": "v1/courses/{courseId}/teachers" + "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." }, "get": { - "description": "Returns a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to view\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist.", "httpMethod": "GET", "parameterOrder": [ "courseId", - "userId" + "id" ], "response": { - "$ref": "Teacher" + "$ref": "CourseWork" }, "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" + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.me.readonly", + "https://www.googleapis.com/auth/classroom.coursework.students", + "https://www.googleapis.com/auth/classroom.coursework.students.readonly" ], "parameters": { - "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", + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "type": "string", - "required": true + "required": true, + "location": "path" }, - "courseId": { + "id": { + "description": "Identifier of the course work.", "type": "string", "required": true, - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." + "location": "path" } }, - "flatPath": "v1/courses/{courseId}/teachers/{userId}", - "path": "v1/courses/{courseId}/teachers/{userId}", - "id": "classroom.courses.teachers.get" + "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": { + "scopes": [ + "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.", + "type": "string", + "required": true + }, + "id": { + "location": "path", + "description": "Identifier of the course work.", + "type": "string", + "required": true + }, + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "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* `title`\n* `description`\n* `state`\n* `due_date`\n* `due_time`\n* `max_points`\n* `scheduled_time`\n* `submission_modification_mode`", + "type": "string" + } + }, + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "path": "v1/courses/{courseId}/courseWork/{id}", + "id": "classroom.courses.courseWork.patch", + "request": { + "$ref": "CourseWork" + }, + "description": "Updates one or more fields of a course work.\n\nSee google.classroom.v1.CourseWork for details\nof which fields may be updated and who may change them.\n\nThis request must be made by the Developer Console project of the\n[OAuth client ID](https://support.google.com/cloud/answer/6158849) used to\ncreate the corresponding course work item.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting developer project did not create\nthe corresponding course work, if the user is not permitted to make the\nrequested modification to the student submission, or for\naccess errors.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `FAILED_PRECONDITION` if the requested course work has already been\ndeleted.\n* `NOT_FOUND` if the requested course, course work, or student submission\ndoes not exist.", + "httpMethod": "PATCH", + "parameterOrder": [ + "courseId", + "id" + ], + "response": { + "$ref": "CourseWork" + } + } + } + }, + "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": { @@ -1537,10 +1470,10 @@ "httpMethod": "POST", "parameters": { "courseId": { - "type": "string", - "required": true, "location": "path", - "description": "Identifier of the course.\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.", + "type": "string", + "required": true } }, "scopes": [ @@ -1553,8 +1486,6 @@ "path": "v1/courses/{courseId}/teachers" }, "delete": { - "id": "classroom.courses.teachers.delete", - "path": "v1/courses/{courseId}/teachers/{userId}", "description": "Deletes a teacher of a course.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user is not permitted to delete\nteachers of this course or for access errors.\n* `NOT_FOUND` if no teacher of this course has the requested ID or if the\ncourse does not exist.\n* `FAILED_PRECONDITION` if the requested ID belongs to the primary teacher\nof this course.", "response": { "$ref": "Empty" @@ -1564,29 +1495,103 @@ "userId" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], "parameters": { "userId": { - "type": "string", - "required": true, "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" + "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", + "type": "string", + "required": true }, "courseId": { - "type": "string", - "required": true, "location": "path", - "description": "Identifier of the course.\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.", + "type": "string", + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/courses/{courseId}/teachers/{userId}" - } - } - } - } - } + "flatPath": "v1/courses/{courseId}/teachers/{userId}", + "id": "classroom.courses.teachers.delete", + "path": "v1/courses/{courseId}/teachers/{userId}" + }, + "list": { + "parameters": { + "pageToken": { + "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.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "Maximum number of items to return. Zero means no maximum.\n\nThe server may return fewer than the specified number of results.", + "type": "integer", + "location": "query" + }, + "courseId": { + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true + } + }, + "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.", + "response": { + "$ref": "ListTeachersResponse" + }, + "parameterOrder": [ + "courseId" + ], + "httpMethod": "GET" + }, + "get": { + "flatPath": "v1/courses/{courseId}/teachers/{userId}", + "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.", + "response": { + "$ref": "Teacher" + }, + "parameterOrder": [ + "courseId", + "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 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", + "type": "string", + "required": true + }, + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "type": "string", + "required": true, + "location": "path" + } + } + } + } + } + } + } }, "parameters": { "callback": { @@ -1623,15 +1628,15 @@ "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" + "type": "string", + "location": "query" + }, + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" }, "quotaUser": { "location": "query", @@ -1639,10 +1644,10 @@ "type": "string" }, "pp": { + "location": "query", "description": "Pretty-print response.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "oauth_token": { "location": "query", @@ -1655,175 +1660,499 @@ "type": "string" }, "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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, - "uploadType": { + "fields": { + "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "description": "Selector specifying which fields to include in a partial response." }, - "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" } }, "schemas": { - "CourseWork": { - "description": "Course work created by a teacher for students of the course.", + "MultipleChoiceSubmission": { + "description": "Student work for a multiple-choice question.", "type": "object", "properties": { - "maxPoints": { - "format": "double", - "description": "Maximum grade for this course work.\nIf zero or unspecified, this assignment is considered ungraded.\nThis must be a non-negative integer value.", - "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": { - "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", - "enumDescriptions": [ - "No work type specified. This is never returned.", - "An assignment.", - "A short answer question.", - "A multiple-choice question." - ] - }, - "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" - }, - "scheduledTime": { - "type": "string", - "format": "google-datetime", - "description": "Optional timestamp when this course work is scheduled to be published." - }, - "creationTime": { - "format": "google-datetime", - "description": "Timestamp when this course work was created.\n\nRead-only.", - "type": "string" - }, - "dueDate": { - "description": "Optional date, in UTC, that submissions for this this course work are due.\nThis must be specified if `due_time` is specified.", - "$ref": "Date" - }, - "submissionModificationMode": { - "enumDescriptions": [ - "No modification mode specified. This is never returned.", - "Submisisons can be modified before being turned in.", - "Submisisons can be modified at any time." - ], - "enum": [ - "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED", - "MODIFIABLE_UNTIL_TURNED_IN", - "MODIFIABLE" - ], - "description": "Setting to determine when students are allowed to modify submissions.\nIf unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "No state specified. This is never returned.", - "Status for work that has been published.\nThis is the default state.", - "Status for work that is not yet published.\nWork in this state is visible only to course teachers and domain\nadministrators.", - "Status for work that was published but is now deleted.\nWork in this state is visible only to course teachers and domain\nadministrators.\nWork in this state is deleted after some time." - ], - "enum": [ - "COURSE_WORK_STATE_UNSPECIFIED", - "PUBLISHED", - "DRAFT", - "DELETED" - ], - "description": "Status of this course work.\nIf unspecified, the default state is `DRAFT`.", - "type": "string" - }, - "courseId": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." - }, - "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.", + "answer": { + "description": "Student's select choice.", "type": "string" + } + }, + "id": "MultipleChoiceSubmission" + }, + "CourseMaterial": { + "type": "object", + "properties": { + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." }, - "associatedWithDeveloper": { - "type": "boolean", - "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." - }, - "materials": { - "description": "Additional materials.\n\nCourseWork must have no more than 20 material items.", - "items": { - "$ref": "Material" - }, - "type": "array" + "driveFile": { + "$ref": "DriveFile", + "description": "Google Drive file attachment." }, - "updateTime": { - "type": "string", - "format": "google-datetime", - "description": "Timestamp of the most recent change to this course work.\n\nRead-only." + "form": { + "description": "Google Forms attachment.", + "$ref": "Form" }, - "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" + "link": { + "$ref": "Link", + "description": "Link atatchment." } }, - "id": "CourseWork" + "id": "CourseMaterial", + "description": "A material attached to a course as part of a material set." }, - "Guardian": { - "description": "Association between a student and a guardian of that student. The guardian\nmay receive information about the student's course work.", + "Name": { + "description": "Details of the user's name.", "type": "object", "properties": { - "studentId": { - "description": "Identifier for the student to whom the guardian relationship applies.", - "type": "string" - }, - "invitedEmailAddress": { - "description": "The email address to which the initial guardian invitation was sent.\nThis field is only visible to domain administrators.", + "fullName": { + "description": "The user's full name formed by concatenating the first and last name\nvalues.\n\nRead-only.", "type": "string" }, - "guardianId": { + "familyName": { "type": "string", - "description": "Identifier for the guardian." + "description": "The user's last name.\n\nRead-only." }, - "guardianProfile": { - "$ref": "UserProfile", - "description": "User profile for the guardian." + "givenName": { + "description": "The user's first name.\n\nRead-only.", + "type": "string" } }, - "id": "Guardian" + "id": "Name" }, - "UserProfile": { - "description": "Global information for a user.", + "Assignment": { + "type": "object", + "properties": { + "studentWorkFolder": { + "description": "Drive folder where attachments from student submissions are placed.\nThis is only populated for course teachers.", + "$ref": "DriveFolder" + } + }, + "id": "Assignment", + "description": "Additional details for assignments." + }, + "SharedDriveFile": { + "description": "Drive file that is used as material for course work.", + "type": "object", + "properties": { + "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", + "EDIT", + "STUDENT_COPY" + ], + "description": "Mechanism by which students access the Drive item.", + "type": "string" + }, + "driveFile": { + "$ref": "DriveFile", + "description": "Drive file details." + } + }, + "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 `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" + }, + "MultipleChoiceQuestion": { + "id": "MultipleChoiceQuestion", + "description": "Additional details for multiple-choice questions.", + "type": "object", + "properties": { + "choices": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Possible choices." + } + } + }, + "Course": { + "id": "Course", + "description": "A Course in Classroom.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "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": { + "type": "string", + "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." + }, + "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.", + "items": { + "$ref": "CourseMaterialSet" + }, + "type": "array" + }, + "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": { + "type": "string", + "format": "google-datetime", + "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." + }, + "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": { + "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. Specifying this field in a course\nupdate mask results in an `INVALID_ARGUMENT` error.", + "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": { + "format": "google-datetime", + "description": "Creation time of the course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", + "type": "string" + } + } + }, + "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" + }, + "GlobalPermission": { + "description": "Global user permission description.", + "type": "object", + "properties": { + "permission": { + "enumDescriptions": [ + "No permission is specified. This is not returned and is not a\nvalid value.", + "User is permitted to create a course." + ], + "enum": [ + "PERMISSION_UNSPECIFIED", + "CREATE_COURSE" + ], + "description": "Permission value.", + "type": "string" + } + }, + "id": "GlobalPermission" + }, + "Teacher": { + "description": "Teacher of a course.", + "type": "object", + "properties": { + "userId": { + "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "type": "string" + }, + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "profile": { + "$ref": "UserProfile", + "description": "Global user information for the teacher.\n\nRead-only." + } + }, + "id": "Teacher" + }, + "ReclaimStudentSubmissionRequest": { + "id": "ReclaimStudentSubmissionRequest", + "description": "Request to reclaim a student submission.", + "type": "object", + "properties": {} + }, + "AssignmentSubmission": { + "id": "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.", + "items": { + "$ref": "Attachment" + }, + "type": "array" + } + } + }, + "Material": { + "description": "Material attached to course work.\n\nWhen creating attachments, setting the `form` field is not supported.", + "type": "object", + "properties": { + "youtubeVideo": { + "$ref": "YouTubeVideo", + "description": "YouTube video material." + }, + "driveFile": { + "$ref": "SharedDriveFile", + "description": "Google Drive file material." + }, + "form": { + "$ref": "Form", + "description": "Google Forms material." + }, + "link": { + "$ref": "Link", + "description": "Link material. On creation, will be upgraded to a more appropriate type\nif possible, and this will be reflected in the response." + } + }, + "id": "Material" + }, + "CourseWork": { + "description": "Course work created by a teacher for students of the course.", + "type": "object", + "properties": { + "creationTime": { + "format": "google-datetime", + "description": "Timestamp when this course work was created.\n\nRead-only.", + "type": "string" + }, + "dueDate": { + "description": "Optional date, in UTC, that submissions for this this course work are due.\nThis must be specified if `due_time` is specified.", + "$ref": "Date" + }, + "state": { + "enumDescriptions": [ + "No state specified. This is never returned.", + "Status for work that has been published.\nThis is the default state.", + "Status for work that is not yet published.\nWork in this state is visible only to course teachers and domain\nadministrators.", + "Status for work that was published but is now deleted.\nWork in this state is visible only to course teachers and domain\nadministrators.\nWork in this state is deleted after some time." + ], + "enum": [ + "COURSE_WORK_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ], + "description": "Status of this course work.\nIf unspecified, the default state is `DRAFT`.", + "type": "string" + }, + "submissionModificationMode": { + "enum": [ + "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED", + "MODIFIABLE_UNTIL_TURNED_IN", + "MODIFIABLE" + ], + "description": "Setting to determine when students are allowed to modify submissions.\nIf unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", + "type": "string", + "enumDescriptions": [ + "No modification mode specified. This is never returned.", + "Submisisons can be modified before being turned in.", + "Submisisons can be modified at any time." + ] + }, + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, + "id": { + "description": "Classroom-assigned identifier of this course work, unique per course.\n\nRead-only.", + "type": "string" + }, + "dueTime": { + "$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.", + "items": { + "$ref": "Material" + }, + "type": "array" + }, + "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": { + "format": "google-datetime", + "description": "Timestamp of the most recent change to this course work.\n\nRead-only.", + "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" + }, + "maxPoints": { + "format": "double", + "description": "Maximum grade for this course work.\nIf zero or unspecified, this assignment is considered ungraded.\nThis must be a non-negative integer value.", + "type": "number" + }, + "multipleChoiceQuestion": { + "$ref": "MultipleChoiceQuestion", + "description": "Multiple choice question details.\nFor read operations, this field is populated only when `work_type` is\n`MULTIPLE_CHOICE_QUESTION`.\nFor write operations, this field must be specified when creating course\nwork with a `work_type` of `MULTIPLE_CHOICE_QUESTION`, and it must not be\nset otherwise." + }, + "assignment": { + "description": "Assignment details.\nThis is populated only when `work_type` is `ASSIGNMENT`.\n\nRead-only.", + "$ref": "Assignment" + }, + "workType": { + "description": "Type of this course work.\n\nThe type is set when the course work is created and cannot be changed.", + "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": { + "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" + }, + "scheduledTime": { + "format": "google-datetime", + "description": "Optional timestamp when this course work is scheduled to be published.", + "type": "string" + } + }, + "id": "CourseWork" + }, + "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": { + "description": "Identifier for the student to whom the guardian relationship applies.", + "type": "string" + }, + "invitedEmailAddress": { + "description": "The email address to which the initial guardian invitation was sent.\nThis field is only visible to domain administrators.", + "type": "string" + }, + "guardianId": { + "description": "Identifier for the guardian.", + "type": "string" + }, + "guardianProfile": { + "$ref": "UserProfile", + "description": "User profile for the guardian." + } + }, + "id": "Guardian" + }, + "UserProfile": { + "type": "object", + "properties": { + "name": { + "$ref": "Name", + "description": "Name of the user.\n\nRead-only." + }, "id": { "description": "Identifier of the user.\n\nRead-only.", "type": "string" @@ -1833,8 +2162,8 @@ "type": "boolean" }, "emailAddress": { - "type": "string", - "description": "Email address of the user.\n\nRead-only." + "description": "Email address of the user.\n\nRead-only.", + "type": "string" }, "photoUrl": { "description": "URL of user's profile photo.\n\nRead-only.", @@ -1846,13 +2175,10 @@ "$ref": "GlobalPermission" }, "type": "array" - }, - "name": { - "$ref": "Name", - "description": "Name of the user.\n\nRead-only." } }, - "id": "UserProfile" + "id": "UserProfile", + "description": "Global information for a user." }, "ListStudentsResponse": { "description": "Response when listing students.", @@ -1863,47 +2189,42 @@ "type": "string" }, "students": { - "description": "Students who match the list request.", "items": { "$ref": "Student" }, - "type": "array" + "type": "array", + "description": "Students who match the list request." } }, "id": "ListStudentsResponse" }, "Student": { + "description": "Student in a course.", + "type": "object", "properties": { "studentWorkFolder": { - "$ref": "DriveFolder", - "description": "Information about a Drive Folder for this student's work in this course.\nOnly visible to the student and domain administrators.\n\nRead-only." + "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" }, "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" }, "userId": { "description": "Identifier of the user.\n\nWhen specified as a parameter of a request, this identifier can be one of\nthe following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", "type": "string" }, "courseId": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" } }, - "id": "Student", - "description": "Student in a course.", - "type": "object" + "id": "Student" }, "Invitation": { - "id": "Invitation", "description": "An invitation to join a course.", "type": "object", "properties": { - "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" @@ -1913,6 +2234,7 @@ "type": "string" }, "role": { + "description": "Role to invite the user to have.\nMust not be `COURSE_ROLE_UNSPECIFIED`.", "type": "string", "enumDescriptions": [ "No course role.", @@ -1923,19 +2245,19 @@ "COURSE_ROLE_UNSPECIFIED", "STUDENT", "TEACHER" - ], - "description": "Role to invite the user to have.\nMust not be `COURSE_ROLE_UNSPECIFIED`." + ] + }, + "userId": { + "description": "Identifier of the invited user.\n\nWhen specified as a parameter of a request, this identifier can be set to\none of the following:\n\n* the numeric identifier for the user\n* the email address of the user\n* the string literal `\"me\"`, indicating the requesting user", + "type": "string" } - } + }, + "id": "Invitation" }, "DriveFolder": { "description": "Representation of a Google Drive folder.", "type": "object", "properties": { - "title": { - "description": "Title of the Drive folder.\n\nRead-only.", - "type": "string" - }, "alternateLink": { "description": "URL that can be used to access the Drive folder.\n\nRead-only.", "type": "string" @@ -1943,12 +2265,15 @@ "id": { "description": "Drive API resource ID.", "type": "string" + }, + "title": { + "description": "Title of the Drive folder.\n\nRead-only.", + "type": "string" } }, "id": "DriveFolder" }, "ShortAnswerSubmission": { - "id": "ShortAnswerSubmission", "description": "Student work for a short answer question.", "type": "object", "properties": { @@ -1956,46 +2281,42 @@ "description": "Student response to a short-answer question.", "type": "string" } - } + }, + "id": "ShortAnswerSubmission" }, - "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.", + "TurnInStudentSubmissionRequest": { + "properties": {}, + "id": "TurnInStudentSubmissionRequest", + "description": "Request to turn in a student submission.", + "type": "object" + }, + "ListStudentSubmissionsResponse": { + "description": "Response when listing student submissions.", "type": "object", "properties": { - "assignedGrade": { - "format": "double", - "description": "Optional grade. If unset, no grade was set.\nThis must be a non-negative integer value.\n\nThis may be modified only by course teachers.", - "type": "number" - }, - "multipleChoiceSubmission": { - "$ref": "MultipleChoiceSubmission", - "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION." - }, - "assignmentSubmission": { - "description": "Submission content when course_work_type is ASSIGNMENT .", - "$ref": "AssignmentSubmission" - }, - "associatedWithDeveloper": { - "description": "Whether this student submission is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only.", - "type": "boolean" - }, - "shortAnswerSubmission": { - "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION.", - "$ref": "ShortAnswerSubmission" - }, - "updateTime": { - "format": "google-datetime", - "description": "Last update time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to the submission in the Classroom web UI.\n\nRead-only.", + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", "type": "string" }, + "studentSubmissions": { + "description": "Student work that matches the request.", + "items": { + "$ref": "StudentSubmission" + }, + "type": "array" + } + }, + "id": "ListStudentSubmissionsResponse" + }, + "StudentSubmission": { + "id": "StudentSubmission", + "description": "Student submission for course work.\n\nStudentSubmission items are generated when a CourseWork item is created.\n\nStudentSubmissions that have never been accessed (i.e. with `state` = NEW)\nmay not have a creation time or update time.", + "type": "object", + "properties": { "draftGrade": { + "type": "number", "format": "double", - "description": "Optional pending grade. If unset, no grade was set.\nThis must be a non-negative integer value.\n\nThis is only visible to and modifiable by course teachers.", - "type": "number" + "description": "Optional pending grade. If unset, no grade was set.\nThis must be a non-negative integer value.\n\nThis is only visible to and modifiable by course teachers." }, "late": { "description": "Whether this submission is late.\n\nRead-only.", @@ -2051,709 +2372,388 @@ "type": "string" }, "courseId": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." - }, - "id": { - "description": "Classroom-assigned Identifier for the student submission.\nThis is unique among submissions for the relevant course work.\n\nRead-only.", - "type": "string" - } - }, - "id": "StudentSubmission" - }, - "ListStudentSubmissionsResponse": { - "properties": { - "studentSubmissions": { - "description": "Student work that matches the request.", - "items": { - "$ref": "StudentSubmission" - }, - "type": "array" - }, - "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" - }, - "TurnInStudentSubmissionRequest": { - "description": "Request to turn in a student submission.", - "type": "object", - "properties": {}, - "id": "TurnInStudentSubmissionRequest" - }, - "ListCourseWorkResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "description": "Identifier of the course.\n\nRead-only.", "type": "string" }, - "courseWork": { - "description": "Course work items that match the request.", - "items": { - "$ref": "CourseWork" - }, - "type": "array" - } - }, - "id": "ListCourseWorkResponse", - "description": "Response when listing course work." - }, - "ModifyAttachmentsRequest": { - "type": "object", - "properties": { - "addAttachments": { - "description": "Attachments to add.\nA student submission may not have more than 20 attachments.\n\nForm attachments are not supported.", - "items": { - "$ref": "Attachment" - }, - "type": "array" - } - }, - "id": "ModifyAttachmentsRequest", - "description": "Request to modify the attachments of a student submission." - }, - "YouTubeVideo": { - "type": "object", - "properties": { "id": { - "description": "YouTube API resource ID.", - "type": "string" - }, - "title": { - "description": "Title of the YouTube video.\n\nRead-only.", + "description": "Classroom-assigned Identifier for the student submission.\nThis is unique among submissions for the relevant course work.\n\nRead-only.", "type": "string" }, - "alternateLink": { - "type": "string", - "description": "URL that can be used to view the YouTube video.\n\nRead-only." + "assignedGrade": { + "format": "double", + "description": "Optional grade. If unset, no grade was set.\nThis must be a non-negative integer value.\n\nThis may be modified only by course teachers.", + "type": "number" }, - "thumbnailUrl": { - "description": "URL of a thumbnail image of the YouTube video.\n\nRead-only.", - "type": "string" - } - }, - "id": "YouTubeVideo", - "description": "YouTube video item." - }, - "ListInvitationsResponse": { - "description": "Response when listing invitations.", - "type": "object", - "properties": { - "invitations": { - "description": "Invitations that match the list request.", - "items": { - "$ref": "Invitation" - }, - "type": "array" + "multipleChoiceSubmission": { + "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION.", + "$ref": "MultipleChoiceSubmission" }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListInvitationsResponse" - }, - "GuardianInvitation": { - "id": "GuardianInvitation", - "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address.", - "type": "object", - "properties": { - "invitedEmailAddress": { - "description": "Email address that the invitation was sent to.\nThis field is only visible to domain administrators.", - "type": "string" + "assignmentSubmission": { + "description": "Submission content when course_work_type is ASSIGNMENT .", + "$ref": "AssignmentSubmission" }, - "creationTime": { - "format": "google-datetime", - "description": "The time that this invitation was created.\n\nRead-only.", - "type": "string" + "shortAnswerSubmission": { + "$ref": "ShortAnswerSubmission", + "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION." }, - "invitationId": { - "type": "string", - "description": "Unique identifier for this invitation.\n\nRead-only." + "associatedWithDeveloper": { + "type": "boolean", + "description": "Whether this student submission is associated with the Developer Console\nproject making the request.\n\nSee google.classroom.Work.CreateCourseWork for more\ndetails.\n\nRead-only." }, - "state": { - "enum": [ - "GUARDIAN_INVITATION_STATE_UNSPECIFIED", - "PENDING", - "COMPLETE" - ], - "description": "The state that this invitation is in.", + "updateTime": { "type": "string", - "enumDescriptions": [ - "Should never be returned.", - "The invitation is active and awaiting a response.", - "The invitation is no longer active. It may have been accepted, declined,\nwithdrawn or it may have expired." - ] + "format": "google-datetime", + "description": "Last update time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only." }, - "studentId": { - "description": "ID of the student (in standard format)", + "alternateLink": { + "description": "Absolute link to the submission in the Classroom web UI.\n\nRead-only.", "type": "string" } } - }, - "Attachment": { - "description": "Attachment added to student assignment work.\n\nWhen creating attachments, setting the `form` field is not supported.", - "type": "object", - "properties": { - "youTubeVideo": { - "$ref": "YouTubeVideo", - "description": "Youtube video attachment." - }, - "driveFile": { - "$ref": "DriveFile", - "description": "Google Drive file attachment." - }, - "form": { - "$ref": "Form", - "description": "Google Forms attachment." - }, - "link": { - "$ref": "Link", - "description": "Link attachment." - } - }, - "id": "Attachment" - }, - "CourseMaterialSet": { - "type": "object", - "properties": { - "materials": { - "description": "Materials attached to this set.", - "items": { - "$ref": "CourseMaterial" - }, - "type": "array" - }, - "title": { - "description": "Title for this set.", - "type": "string" - } - }, - "id": "CourseMaterialSet", - "description": "A set of materials that appears on the \"About\" page of the course.\nThese materials might include a syllabus, schedule, or other background\ninformation relating to the course as a whole." - }, - "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": { - "format": "int32", - "description": "Minutes of hour of day. Must be from 0 to 59.", - "type": "integer" - }, - "hours": { - "format": "int32", - "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.", - "type": "integer" - }, - "nanos": { - "format": "int32", - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", - "type": "integer" - }, - "seconds": { - "format": "int32", - "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.", - "type": "integer" + }, + "ModifyAttachmentsRequest": { + "description": "Request to modify the attachments of a student submission.", + "type": "object", + "properties": { + "addAttachments": { + "description": "Attachments to add.\nA student submission may not have more than 20 attachments.\n\nForm attachments are not supported.", + "items": { + "$ref": "Attachment" + }, + "type": "array" } }, - "id": "TimeOfDay" + "id": "ModifyAttachmentsRequest" }, - "ListCoursesResponse": { - "description": "Response when listing courses.", + "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" }, - "courses": { - "description": "Courses that match the list request.", + "courseWork": { "items": { - "$ref": "Course" + "$ref": "CourseWork" }, - "type": "array" + "type": "array", + "description": "Course work items that match the request." } }, - "id": "ListCoursesResponse" + "id": "ListCourseWorkResponse" }, - "Form": { - "description": "Google Forms item.", + "YouTubeVideo": { "type": "object", "properties": { - "responseUrl": { - "description": "URL of the form responses document.\nOnly set if respsonses have been recorded and only when the\nrequesting user is an editor of the form.\n\nRead-only.", + "alternateLink": { + "description": "URL that can be used to view the YouTube video.\n\nRead-only.", "type": "string" }, - "formUrl": { - "description": "URL of the form.", + "thumbnailUrl": { + "description": "URL of a thumbnail image of the YouTube video.\n\nRead-only.", "type": "string" }, - "title": { - "description": "Title of the Form.\n\nRead-only.", + "id": { + "description": "YouTube API resource ID.", "type": "string" }, - "thumbnailUrl": { - "description": "URL of a thumbnail image of the Form.\n\nRead-only.", + "title": { + "description": "Title of the YouTube video.\n\nRead-only.", "type": "string" } }, - "id": "Form" + "id": "YouTubeVideo", + "description": "YouTube video item." }, - "ListTeachersResponse": { - "description": "Response when listing teachers.", - "type": "object", + "ListInvitationsResponse": { "properties": { - "teachers": { - "description": "Teachers who match the list request.", + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "invitations": { + "description": "Invitations that match the list request.", "items": { - "$ref": "Teacher" + "$ref": "Invitation" }, "type": "array" - }, - "nextPageToken": { - "type": "string", - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available." } }, - "id": "ListTeachersResponse" + "id": "ListInvitationsResponse", + "description": "Response when listing invitations.", + "type": "object" }, - "Link": { - "description": "URL item.", + "Attachment": { + "description": "Attachment added to student assignment work.\n\nWhen creating attachments, setting the `form` field is not supported.", "type": "object", "properties": { - "thumbnailUrl": { - "description": "URL of a thumbnail image of the target URL.\n\nRead-only.", - "type": "string" + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." }, - "url": { - "type": "string", - "description": "URL to link to.\nThis must be a valid UTF-8 string containing between 1 and 2024 characters." + "driveFile": { + "description": "Google Drive file attachment.", + "$ref": "DriveFile" }, - "title": { - "description": "Title of the target of the URL.\n\nRead-only.", - "type": "string" + "form": { + "$ref": "Form", + "description": "Google Forms attachment." + }, + "link": { + "description": "Link attachment.", + "$ref": "Link" } }, - "id": "Link" + "id": "Attachment" }, - "ListGuardiansResponse": { - "description": "Response when listing guardians.", + "GuardianInvitation": { + "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address.", "type": "object", "properties": { - "guardians": { - "description": "Guardians on this page of results that met the criteria specified in\nthe request.", - "items": { - "$ref": "Guardian" - }, - "type": "array" + "creationTime": { + "format": "google-datetime", + "description": "The time that this invitation was created.\n\nRead-only.", + "type": "string" }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "invitationId": { + "description": "Unique identifier for this invitation.\n\nRead-only.", "type": "string" - } - }, - "id": "ListGuardiansResponse" - }, - "CourseAlias": { - "description": "Alternative identifier for a course.\n\nAn alias uniquely identifies a course. It must be unique within one of the\nfollowing scopes:\n\n* domain: A domain-scoped alias is visible to all users within the alias\ncreator's domain and can be created only by a domain admin. A domain-scoped\nalias is often used when a course has an identifier external to Classroom.\n\n* project: A project-scoped alias is visible to any request from an\napplication using the Developer Console project ID that created the alias\nand can be created by any project. A project-scoped alias is often used when\nan application has alternative identifiers. A random value can also be used\nto avoid duplicate courses in the event of transmission failures, as retrying\na request will return `ALREADY_EXISTS` if a previous one has succeeded.", - "type": "object", - "properties": { - "alias": { - "description": "Alias string. The format of the string indicates the desired alias scoping.\n\n* `d:\u003cname\u003e` indicates a domain-scoped alias.\n Example: `d:math_101`\n* `p:\u003cname\u003e` indicates a project-scoped alias.\n Example: `p:abc123`\n\nThis field has a maximum length of 256 characters.", + }, + "state": { + "enum": [ + "GUARDIAN_INVITATION_STATE_UNSPECIFIED", + "PENDING", + "COMPLETE" + ], + "description": "The state that this invitation is in.", + "type": "string", + "enumDescriptions": [ + "Should never be returned.", + "The invitation is active and awaiting a response.", + "The invitation is no longer active. It may have been accepted, declined,\nwithdrawn or it may have expired." + ] + }, + "studentId": { + "description": "ID of the student (in standard format)", "type": "string" + }, + "invitedEmailAddress": { + "type": "string", + "description": "Email address that the invitation was sent to.\nThis field is only visible to domain administrators." } }, - "id": "CourseAlias" + "id": "GuardianInvitation" }, - "ListCourseAliasesResponse": { - "description": "Response when listing course aliases.", + "CourseMaterialSet": { + "description": "A set of materials that appears on the \"About\" page of the course.\nThese materials might include a syllabus, schedule, or other background\ninformation relating to the course as a whole.", "type": "object", "properties": { - "aliases": { - "description": "The course aliases.", + "materials": { + "description": "Materials attached to this set.", "items": { - "$ref": "CourseAlias" + "$ref": "CourseMaterial" }, "type": "array" }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "title": { + "description": "Title for this set.", "type": "string" } }, - "id": "ListCourseAliasesResponse" - }, - "ListGuardianInvitationsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available." - }, - "guardianInvitations": { - "description": "Guardian invitations that matched the list request.", - "items": { - "$ref": "GuardianInvitation" - }, - "type": "array" - } - }, - "id": "ListGuardianInvitationsResponse", - "description": "Response when listing guardian invitations." + "id": "CourseMaterialSet" }, - "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`.", + "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": { - "day": { - "type": "integer", - "format": "int32", - "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." - }, - "year": { + "minutes": { "format": "int32", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "description": "Minutes of hour of day. Must be from 0 to 59.", "type": "integer" }, - "month": { + "hours": { "format": "int32", - "description": "Month of year. Must be from 1 to 12.", + "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.", "type": "integer" - } - }, - "id": "Date" - }, - "MultipleChoiceSubmission": { - "id": "MultipleChoiceSubmission", - "description": "Student work for a multiple-choice question.", - "type": "object", - "properties": { - "answer": { - "description": "Student's select choice.", - "type": "string" - } - } - }, - "Name": { - "description": "Details of the user's name.", - "type": "object", - "properties": { - "familyName": { - "description": "The user's last name.\n\nRead-only.", - "type": "string" - }, - "givenName": { - "description": "The user's first 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" - }, - "CourseMaterial": { - "properties": { - "youTubeVideo": { - "$ref": "YouTubeVideo", - "description": "Youtube video attachment." - }, - "driveFile": { - "$ref": "DriveFile", - "description": "Google Drive file attachment." - }, - "form": { - "$ref": "Form", - "description": "Google Forms attachment." }, - "link": { - "$ref": "Link", - "description": "Link atatchment." - } - }, - "id": "CourseMaterial", - "description": "A material attached to a course as part of a material set.", - "type": "object" - }, - "Assignment": { - "description": "Additional details for assignments.", - "type": "object", - "properties": { - "studentWorkFolder": { - "description": "Drive folder where attachments from student submissions are placed.\nThis is only populated for course teachers.", - "$ref": "DriveFolder" - } - }, - "id": "Assignment" - }, - "SharedDriveFile": { - "properties": { - "shareMode": { - "description": "Mechanism by which students access the Drive item.", - "type": "string", - "enumDescriptions": [ - "No sharing mode specified. This should never be returned.", - "Students can view the shared file.", - "Students can edit the shared file.", - "Students have a personal copy of the shared file." - ], - "enum": [ - "UNKNOWN_SHARE_MODE", - "VIEW", - "EDIT", - "STUDENT_COPY" - ] + "nanos": { + "format": "int32", + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "type": "integer" }, - "driveFile": { - "$ref": "DriveFile", - "description": "Drive file details." + "seconds": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "SharedDriveFile", - "description": "Drive file that is used as material for course work.", - "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": "TimeOfDay" }, - "MultipleChoiceQuestion": { - "description": "Additional details for multiple-choice questions.", + "ListCoursesResponse": { + "description": "Response when listing courses.", "type": "object", "properties": { - "choices": { - "description": "Possible choices.", + "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.", "items": { - "type": "string" + "$ref": "Course" }, "type": "array" } }, - "id": "MultipleChoiceQuestion" + "id": "ListCoursesResponse" }, - "Course": { - "id": "Course", - "description": "A Course in Classroom.", + "Form": { + "description": "Google Forms item.", "type": "object", "properties": { - "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": { - "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": { - "format": "google-datetime", - "description": "Creation time of the course.\nSpecifying this field in a course update mask results in an error.\n\nRead-only.", - "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." - }, - "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" - }, - "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.", + "formUrl": { + "description": "URL of the form.", "type": "string" }, - "id": { - "description": "Identifier for this course assigned by Classroom.\n\nWhen\ncreating a course,\nyou may optionally set this identifier to an\nalias string in the\nrequest to create a corresponding alias. The `id` is still assigned by\nClassroom and cannot be updated after the course is created.\n\nSpecifying this field in a course update mask results in an error.", + "title": { + "description": "Title of the Form.\n\nRead-only.", "type": "string" }, - "room": { - "description": "Optional room location.\nFor example, \"301\".\nIf set, this field must be a valid UTF-8 string and no longer than 650\ncharacters.", + "thumbnailUrl": { + "description": "URL of a thumbnail image of the Form.\n\nRead-only.", "type": "string" }, - "courseGroupEmail": { - "description": "The email address of a Google group containing all members of the course.\nThis group does not accept email and can only be used for permissions.\n\nRead-only.", + "responseUrl": { + "description": "URL of the form responses document.\nOnly set if respsonses have been recorded and only when the\nrequesting user is an editor of the form.\n\nRead-only.", "type": "string" - }, - "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.", + } + }, + "id": "Form" + }, + "ListTeachersResponse": { + "id": "ListTeachersResponse", + "description": "Response when listing teachers.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", "type": "string" }, - "courseMaterialSets": { - "description": "Sets of materials that appear on the \"about\" page of this course.\n\nRead-only.", + "teachers": { + "description": "Teachers who match the list request.", "items": { - "$ref": "CourseMaterialSet" + "$ref": "Teacher" }, "type": "array" - }, - "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": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "alternateLink": { - "description": "Absolute link to this course in the Classroom web UI.\n\nRead-only.", - "type": "string" - }, - "guardiansEnabled": { - "type": "boolean", - "description": "Whether or not guardian notifications are enabled for this course.\n\nRead-only." - }, - "courseState": { - "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." - ], - "enum": [ - "COURSE_STATE_UNSPECIFIED", - "ACTIVE", - "ARCHIVED", - "PROVISIONED", - "DECLINED", - "SUSPENDED" - ] - }, - "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. Specifying this field in a course\nupdate mask results in an `INVALID_ARGUMENT` error.", - "type": "string" } } }, - "DriveFile": { + "Link": { + "id": "Link", + "description": "URL item.", + "type": "object", "properties": { - "id": { - "description": "Drive API resource ID.", + "url": { + "description": "URL to link to.\nThis must be a valid UTF-8 string containing between 1 and 2024 characters.", "type": "string" }, "title": { - "description": "Title of the Drive item.\n\nRead-only.", + "description": "Title of the target of the URL.\n\nRead-only.", "type": "string" }, - "alternateLink": { - "description": "URL that can be used to access the Drive item.\n\nRead-only.", + "thumbnailUrl": { + "description": "URL of a thumbnail image of the target URL.\n\nRead-only.", "type": "string" + } + } + }, + "ListGuardiansResponse": { + "properties": { + "guardians": { + "description": "Guardians on this page of results that met the criteria specified in\nthe request.", + "items": { + "$ref": "Guardian" + }, + "type": "array" }, - "thumbnailUrl": { - "description": "URL of a thumbnail image of the Drive item.\n\nRead-only.", + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", "type": "string" } }, - "id": "DriveFile", - "description": "Representation of a Google Drive file.", + "id": "ListGuardiansResponse", + "description": "Response when listing guardians.", "type": "object" }, - "ReturnStudentSubmissionRequest": { - "description": "Request to return a student submission.", - "type": "object", - "properties": {}, - "id": "ReturnStudentSubmissionRequest" - }, - "GlobalPermission": { + "CourseAlias": { + "description": "Alternative identifier for a course.\n\nAn alias uniquely identifies a course. It must be unique within one of the\nfollowing scopes:\n\n* domain: A domain-scoped alias is visible to all users within the alias\ncreator's domain and can be created only by a domain admin. A domain-scoped\nalias is often used when a course has an identifier external to Classroom.\n\n* project: A project-scoped alias is visible to any request from an\napplication using the Developer Console project ID that created the alias\nand can be created by any project. A project-scoped alias is often used when\nan application has alternative identifiers. A random value can also be used\nto avoid duplicate courses in the event of transmission failures, as retrying\na request will return `ALREADY_EXISTS` if a previous one has succeeded.", "type": "object", "properties": { - "permission": { - "enum": [ - "PERMISSION_UNSPECIFIED", - "CREATE_COURSE" - ], - "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." - ] + "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": "GlobalPermission", - "description": "Global user permission description." + "id": "CourseAlias" }, - "Teacher": { - "id": "Teacher", - "description": "Teacher of a course.", + "ListCourseAliasesResponse": { + "description": "Response when listing course aliases.", "type": "object", "properties": { - "userId": { - "type": "string", - "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" + "aliases": { + "description": "The course aliases.", + "items": { + "$ref": "CourseAlias" + }, + "type": "array" }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", "type": "string" - }, - "profile": { - "description": "Global user information for the teacher.\n\nRead-only.", - "$ref": "UserProfile" } - } - }, - "ReclaimStudentSubmissionRequest": { - "description": "Request to reclaim a student submission.", - "type": "object", - "properties": {}, - "id": "ReclaimStudentSubmissionRequest" + }, + "id": "ListCourseAliasesResponse" }, - "AssignmentSubmission": { - "description": "Student work for an assignment.", + "ListGuardianInvitationsResponse": { + "description": "Response when listing guardian invitations.", "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.", + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, + "guardianInvitations": { + "description": "Guardian invitations that matched the list request.", "items": { - "$ref": "Attachment" + "$ref": "GuardianInvitation" }, "type": "array" } }, - "id": "AssignmentSubmission" + "id": "ListGuardianInvitationsResponse" }, - "Material": { - "id": "Material", - "description": "Material attached to course work.\n\nWhen creating attachments, setting the `form` field is not supported.", + "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": { - "youtubeVideo": { - "description": "YouTube video material.", - "$ref": "YouTubeVideo" - }, - "driveFile": { - "description": "Google Drive file material.", - "$ref": "SharedDriveFile" + "day": { + "type": "integer", + "format": "int32", + "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." }, - "form": { - "description": "Google Forms material.", - "$ref": "Form" + "year": { + "format": "int32", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "type": "integer" }, - "link": { - "description": "Link material. On creation, will be upgraded to a more appropriate type\nif possible, and this will be reflected in the response.", - "$ref": "Link" + "month": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" } - } + }, + "id": "Date" } - }, - "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" + } } diff --git a/DiscoveryJson/cloudbuild_v1.json b/DiscoveryJson/cloudbuild_v1.json index 3b00629f74..3f74fc3822 100644 --- a/DiscoveryJson/cloudbuild_v1.json +++ b/DiscoveryJson/cloudbuild_v1.json @@ -6,118 +6,55 @@ "title": "Google Cloud Container Builder API", "ownerName": "Google", "resources": { - "operations": { - "methods": { - "cancel": { - "path": "v1/{+name}:cancel", - "id": "cloudbuild.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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}:cancel" - }, - "get": { - "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.", - "httpMethod": "GET", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/operations/{operationsId}" - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ListOperationsResponse" - }, - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "pattern": "^operations$", - "location": "path", - "description": "The name of the operation's parent resource.", - "type": "string", - "required": true - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations", - "path": "v1/{+name}", - "id": "cloudbuild.operations.list" - } - } - }, "projects": { "resources": { "triggers": { "methods": { + "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.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/triggers", + "id": "cloudbuild.projects.triggers.create", + "path": "v1/projects/{projectId}/triggers" + }, "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "projectId", + "triggerId" + ], "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "triggerId": { - "location": "path", "description": "ID of the BuildTrigger to delete.", "type": "string", - "required": true + "required": true, + "location": "path" }, "projectId": { "location": "path", @@ -129,17 +66,11 @@ "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", "path": "v1/projects/{projectId}/triggers/{triggerId}", "id": "cloudbuild.projects.triggers.delete", - "description": "Deletes an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", - "httpMethod": "DELETE", - "parameterOrder": [ - "projectId", - "triggerId" - ], - "response": { - "$ref": "Empty" - } + "description": "Deletes an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental." }, "patch": { + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "id": "cloudbuild.projects.triggers.patch", "description": "Updates an BuildTrigger by its project ID and trigger ID.\n\nThis API is experimental.", "request": { "$ref": "BuildTrigger" @@ -154,36 +85,35 @@ }, "parameters": { "triggerId": { + "location": "path", "description": "ID of the BuildTrigger to update.", "type": "string", - "required": true, - "location": "path" + "required": true }, "projectId": { + "location": "path", "description": "ID of the project that owns the trigger.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "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" + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}" }, "list": { - "path": "v1/projects/{projectId}/triggers", + "flatPath": "v1/projects/{projectId}/triggers", "id": "cloudbuild.projects.triggers.list", + "path": "v1/projects/{projectId}/triggers", "description": "Lists existing BuildTrigger.\n\nThis API is experimental.", - "httpMethod": "GET", "response": { "$ref": "ListBuildTriggersResponse" }, "parameterOrder": [ "projectId" ], + "httpMethod": "GET", "parameters": { "projectId": { "location": "path", @@ -194,8 +124,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers" + ] }, "get": { "response": { @@ -217,62 +146,39 @@ "required": true }, "projectId": { - "type": "string", - "required": true, "location": "path", - "description": "ID of the project that owns the trigger." + "description": "ID of the project that owns the trigger.", + "type": "string", + "required": true } }, "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", "id": "cloudbuild.projects.triggers.get", "path": "v1/projects/{projectId}/triggers/{triggerId}", "description": "Gets information about a BuildTrigger.\n\nThis API is experimental." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "BuildTrigger" - }, - "parameters": { - "projectId": { - "description": "ID of the project for which to configure automatic builds.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } } } }, "builds": { "methods": { "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" ], - "httpMethod": "GET", "parameters": { + "filter": { + "description": "The raw filter text to constrain the results.", + "type": "string", + "location": "query" + }, "pageToken": { + "description": "Token to provide to skip to a particular spot in the list.", "type": "string", - "location": "query", - "description": "Token to provide to skip to a particular spot in the list." + "location": "query" }, "pageSize": { "location": "query", @@ -281,100 +187,96 @@ "type": "integer" }, "projectId": { + "location": "path", "description": "ID of the project.", "type": "string", - "required": true, - "location": "path" - }, - "filter": { - "description": "The raw filter text to constrain the results.", - "type": "string", - "location": "query" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectId}/builds", + "path": "v1/projects/{projectId}/builds", "id": "cloudbuild.projects.builds.list", - "path": "v1/projects/{projectId}/builds" + "description": "Lists previously requested builds.\n\nPreviously requested builds may still be in-progress, or may have finished\nsuccessfully or unsuccessfully." }, "get": { - "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 (e.g., success or failure,\nor in-progress), and timing information.", "httpMethod": "GET", - "response": { - "$ref": "Build" - }, "parameterOrder": [ "projectId", "id" ], - "parameters": { - "id": { - "description": "ID of the build.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "ID of the project." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], "response": { - "$ref": "Operation" + "$ref": "Build" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "projectId": { + "description": "ID of the project.", "type": "string", "required": true, + "location": "path" + }, + "id": { "location": "path", - "description": "ID of the project." + "description": "ID of the build.", + "type": "string", + "required": true } }, + "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 (e.g., success or failure,\nor in-progress), and timing information." + }, + "create": { "flatPath": "v1/projects/{projectId}/builds", - "path": "v1/projects/{projectId}/builds", "id": "cloudbuild.projects.builds.create", + "path": "v1/projects/{projectId}/builds", + "description": "Starts a build with the specified configuration.\n\nThe long-running Operation returned by this method will include the ID of\nthe build, which can be passed to GetBuild to determine its status (e.g.,\nsuccess or failure).", "request": { "$ref": "Build" }, - "description": "Starts a build with the specified configuration.\n\nThe long-running Operation returned by this method will include the ID of\nthe build, which can be passed to GetBuild to determine its status (e.g.,\nsuccess or failure)." - }, - "cancel": { "response": { - "$ref": "Build" + "$ref": "Operation" }, "parameterOrder": [ - "projectId", - "id" + "projectId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "projectId": { "location": "path", "description": "ID of the project.", "type": "string", "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "id" + ], + "response": { + "$ref": "Build" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "ID of the project.", + "type": "string", + "required": true, + "location": "path" }, "id": { "location": "path", @@ -384,8 +286,8 @@ } }, "flatPath": "v1/projects/{projectId}/builds/{id}:cancel", - "id": "cloudbuild.projects.builds.cancel", "path": "v1/projects/{projectId}/builds/{id}:cancel", + "id": "cloudbuild.projects.builds.cancel", "request": { "$ref": "CancelBuildRequest" }, @@ -394,13 +296,121 @@ } } } + }, + "operations": { + "methods": { + "cancel": { + "flatPath": "v1/operations/{operationsId}:cancel", + "id": "cloudbuild.operations.cancel", + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "type": "string", + "required": true, + "pattern": "^operations/.+$", + "location": "path", + "description": "The name of the operation resource to be cancelled." + } + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^operations/.+$", + "location": "path" + } + }, + "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." + }, + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^operations$", + "location": "path" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + }, + "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." + } + } } }, "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", - "location": "query" + "type": "string" }, "prettyPrint": { "description": "Returns response with indentations and line breaks.", @@ -409,9 +419,9 @@ "location": "query" }, "uploadType": { + "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "type": "string" }, "fields": { "location": "query", @@ -437,6 +447,12 @@ "type": "string" }, "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -444,23 +460,17 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" + "default": "json" }, - "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": { - "description": "API key. 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." }, "quotaUser": { "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", @@ -472,31 +482,188 @@ "type": "boolean", "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://cloudbuild.googleapis.com/", + "servicePath": "", "kind": "discovery#restDescription", "description": "Builds container images in the cloud.", - "servicePath": "", "basePath": "", - "id": "cloudbuild:v1", + "revision": "20170718", "documentationLink": "https://cloud.google.com/container-builder/docs/", - "revision": "20170713", + "id": "cloudbuild:v1", "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" + }, + "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" + }, + "ListBuildTriggersResponse": { + "description": "Response containing existing BuildTriggers.", + "type": "object", + "properties": { + "triggers": { + "description": "BuildTriggers for the project, sorted by create_time descending.", + "items": { + "$ref": "BuildTrigger" + }, + "type": "array" + } + }, + "id": "ListBuildTriggersResponse" + }, + "BuiltImage": { + "id": "BuiltImage", + "description": "BuiltImage describes an image built by the pipeline.", + "type": "object", + "properties": { + "digest": { + "description": "Docker Registry 2.0 digest.", + "type": "string" + }, + "name": { + "type": "string", + "description": "Name used to push the container image to Google Container Registry, as\npresented to `docker push`." + } + } + }, + "BuildStep": { + "description": "BuildStep describes a step to perform in the build pipeline.", + "type": "object", + "properties": { + "dir": { + "type": "string", + "description": "Working directory (relative to project source root) to use when running\nthis operation's container." + }, + "env": { + "description": "A list of environment variable definitions to be used when running a step.\n\nThe elements are of the form \"KEY=VALUE\" for the environment variable \"KEY\"\nbeing given the value \"VALUE\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "waitFor": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The ID(s) of the step(s) that this build step depends on.\nThis build step will not start until all the build steps in wait_for\nhave completed successfully. If wait_for is empty, this build step will\nstart when all previous build steps in the Build.Steps list have completed\nsuccessfully." + }, + "args": { + "description": "A list of arguments that will be presented to the step when it is started.\n\nIf the image used to run the step's container has an entrypoint, these args\nwill be used as arguments to that entrypoint. If the image does not define\nan entrypoint, the first element in args will be used as the entrypoint,\nand the remainder will be used as arguments.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The name of the container image that will run this particular build step.\n\nIf the image is already available in the host's Docker daemon's cache, it\nwill be run directly. If not, the host will attempt to pull the image\nfirst, using the builder service account's credentials if necessary.\n\nThe Docker daemon's cache will already have the latest versions of all of\nthe officially supported build steps\n([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).\nThe Docker daemon will also have cached many of the layers for some popular\nimages, like \"ubuntu\", \"debian\", but they will be refreshed at the time you\nattempt to use them.\n\nIf you built an image in a previous build step, it will be stored in the\nhost's Docker daemon's cache and is available to use as the name for a\nlater build step.", + "type": "string" + }, + "entrypoint": { + "description": "Optional entrypoint to be used instead of the build step image's default\nIf unset, the image's default will be used.", + "type": "string" + }, + "id": { + "description": "Optional unique identifier for this build step, used in wait_for to\nreference this build step as a dependency.", + "type": "string" + }, + "secretEnv": { + "description": "A list of environment variables which are encrypted using a Cloud KMS\ncrypto key. These values must be specified in the build's secrets.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "BuildStep" + }, + "RepoSource": { + "description": "RepoSource describes the location of the source in a Google Cloud Source\nRepository.", + "type": "object", + "properties": { + "commitSha": { + "description": "Explicit commit SHA to build.", + "type": "string" + }, + "tagName": { + "description": "Name of the tag to build.", + "type": "string" + }, + "branchName": { + "description": "Name of the branch to build.", + "type": "string" + }, + "repoName": { + "description": "Name of the repo. If omitted, the name \"default\" is assumed.", + "type": "string" + }, + "projectId": { + "type": "string", + "description": "ID of the project that owns the repo. If omitted, the project ID requesting\nthe build is assumed." + } + }, + "id": "RepoSource" + }, + "Hash": { + "description": "Container message for hash values.", + "type": "object", + "properties": { + "type": { + "enumDescriptions": [ + "No hash requested.", + "Use a sha256 hash." + ], + "enum": [ + "NONE", + "SHA256" + ], + "description": "The type of hash that was performed.", + "type": "string" + }, + "value": { + "format": "byte", + "description": "The hash value.", + "type": "string" + } + }, + "id": "Hash" + }, "FileHashes": { + "type": "object", "properties": { "fileHash": { "description": "Collection of file hashes.", @@ -507,8 +674,7 @@ } }, "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" + "description": "Container message for hashes of byte content of files, used in\nSourceProvenance messages to verify integrity of source input to the build." }, "Secret": { "description": "Secret pairs a set of secret environment variables containing encrypted\nvalues with the Cloud KMS key to use to decrypt the value.", @@ -516,8 +682,8 @@ "properties": { "secretEnv": { "additionalProperties": { - "type": "string", - "format": "byte" + "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" @@ -530,17 +696,22 @@ "id": "Secret" }, "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": { + "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.", "items": { - "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - } + }, + "type": "object" }, "type": "array" }, @@ -548,59 +719,54 @@ "format": "int32", "description": "The status code, which should be an enum value of google.rpc.Code.", "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" + } }, "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 `{}`." }, "BuildTrigger": { "description": "Configuration for an automated build in response to source repository\nchanges.", "type": "object", "properties": { - "filename": { - "description": "Path, from the source root, to a file whose contents is used for the\ntemplate.", + "createTime": { + "format": "google-datetime", + "description": "Time when the trigger was created.\n\n@OutputOnly", "type": "string" }, + "disabled": { + "description": "If true, the trigger will never result in a build.", + "type": "boolean" + }, "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." + "description": "Template describing the types of source changes to trigger a build.\n\nBranch and tag names in trigger templates are interpreted as regular\nexpressions. Any branch or tag change that matches that regular expression\nwill trigger a build.", + "$ref": "RepoSource" + }, + "filename": { + "description": "Path, from the source root, to a file whose contents is used for the\ntemplate.", + "type": "string" }, "id": { - "type": "string", - "description": "Unique identifier of the trigger.\n\n@OutputOnly" + "description": "Unique identifier of the trigger.\n\n@OutputOnly", + "type": "string" }, "build": { "description": "Contents of the build template.", "$ref": "Build" }, "substitutions": { - "description": "Substitutions data for Build resource.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Substitutions data for Build resource.", + "type": "object" }, "description": { "description": "Human-readable description of this trigger.", "type": "string" - }, - "createTime": { - "format": "google-datetime", - "description": "Time when the trigger was created.\n\n@OutputOnly", - "type": "string" - }, - "disabled": { - "description": "If true, the trigger will never result in a build.", - "type": "boolean" } }, "id": "BuildTrigger" @@ -609,6 +775,43 @@ "description": "A build resource in the Container Builder API.\n\nAt a high level, a Build describes where to find source code, how to build\nit (for example, the builder image to run on the source), and what tag to\napply to the built image when it is pushed to Google Container Registry.\n\nFields can include the following variables which will be expanded when the\nbuild is created:\n\n- $PROJECT_ID: the project ID of the build.\n- $BUILD_ID: the autogenerated ID of the build.\n- $REPO_NAME: the source repository name specified by RepoSource.\n- $BRANCH_NAME: the branch name specified by RepoSource.\n- $TAG_NAME: the tag name specified by RepoSource.\n- $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or\n resolved from the specified branch or tag.", "type": "object", "properties": { + "secrets": { + "description": "Secrets to decrypt using Cloud KMS.", + "items": { + "$ref": "Secret" + }, + "type": "array" + }, + "logsBucket": { + "description": "Google Cloud Storage bucket where logs should be written (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nLogs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.", + "type": "string" + }, + "results": { + "$ref": "Results", + "description": "Results of the build.\n@OutputOnly" + }, + "steps": { + "description": "Describes the operations to be performed on the workspace.", + "items": { + "$ref": "BuildStep" + }, + "type": "array" + }, + "buildTriggerId": { + "description": "The ID of the BuildTrigger that triggered this build, if it was\ntriggered automatically.\n@OutputOnly", + "type": "string" + }, + "id": { + "description": "Unique identifier of the build.\n@OutputOnly", + "type": "string" + }, + "tags": { + "description": "Tags for annotation of a Build. These are not docker tags.", + "items": { + "type": "string" + }, + "type": "array" + }, "substitutions": { "additionalProperties": { "type": "string" @@ -641,40 +844,28 @@ "description": "ID of the project.\n@OutputOnly.", "type": "string" }, - "finishTime": { - "type": "string", - "format": "google-datetime", - "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" - }, "logUrl": { "type": "string", "description": "URL to logs for this build in Google Cloud Logging.\n@OutputOnly" }, - "source": { - "$ref": "Source", - "description": "Describes where to find the source files to build." + "finishTime": { + "format": "google-datetime", + "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", + "type": "string" }, "options": { "$ref": "BuildOptions", "description": "Special options for this build." }, - "timeout": { - "format": "google-duration", - "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.", - "type": "string" + "source": { + "description": "Describes where to find the source files to build.", + "$ref": "Source" }, - "status": { - "type": "string", - "enumDescriptions": [ - "Status of the build is unknown.", - "Build is queued; work has not yet begun.", - "Build is being executed.", - "Build finished successfully.", - "Build failed to complete successfully.", - "Build failed due to an internal cause.", - "Build took longer than was allowed.", - "Build was canceled by a user." - ], + "statusDetail": { + "type": "string", + "description": "Customer-readable message about the current status.\n@OutputOnly" + }, + "status": { "enum": [ "STATUS_UNKNOWN", "QUEUED", @@ -685,47 +876,22 @@ "TIMEOUT", "CANCELLED" ], - "description": "Status of the build.\n@OutputOnly" - }, - "statusDetail": { - "description": "Customer-readable message about the current status.\n@OutputOnly", - "type": "string" - }, - "secrets": { - "description": "Secrets to decrypt using Cloud KMS.", - "items": { - "$ref": "Secret" - }, - "type": "array" - }, - "results": { - "$ref": "Results", - "description": "Results of the build.\n@OutputOnly" - }, - "logsBucket": { - "description": "Google Cloud Storage bucket where logs should be written (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nLogs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.", - "type": "string" - }, - "steps": { - "description": "Describes the operations to be performed on the workspace.", - "items": { - "$ref": "BuildStep" - }, - "type": "array" - }, - "buildTriggerId": { - "description": "The ID of the BuildTrigger that triggered this build, if it was\ntriggered automatically.\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for annotation of a Build. These are not docker tags.", - "items": { - "type": "string" - }, - "type": "array" + "description": "Status of the build.\n@OutputOnly", + "type": "string", + "enumDescriptions": [ + "Status of the build is unknown.", + "Build is queued; work has not yet begun.", + "Build is being executed.", + "Build finished successfully.", + "Build failed to complete successfully.", + "Build failed due to an internal cause.", + "Build took longer than was allowed.", + "Build was canceled by a user." + ] }, - "id": { - "description": "Unique identifier of the build.\n@OutputOnly", + "timeout": { + "format": "google-duration", + "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.", "type": "string" } }, @@ -738,7 +904,6 @@ "id": "CancelBuildRequest" }, "ListBuildsResponse": { - "description": "Response including listed builds.", "type": "object", "properties": { "nextPageToken": { @@ -753,10 +918,10 @@ "type": "array" } }, - "id": "ListBuildsResponse" + "id": "ListBuildsResponse", + "description": "Response including listed builds." }, "ListOperationsResponse": { - "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -771,15 +936,16 @@ } }, "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations." + "description": "The response message for Operations.ListOperations.", + "type": "object" }, "Source": { "description": "Source describes the location of the source in a supported storage\nservice.", "type": "object", "properties": { "storageSource": { - "$ref": "StorageSource", - "description": "If provided, get the source from this location in in Google Cloud\nStorage." + "description": "If provided, get the source from this location in in Google Cloud\nStorage.", + "$ref": "StorageSource" }, "repoSource": { "$ref": "RepoSource", @@ -789,32 +955,33 @@ "id": "Source" }, "BuildOptions": { + "id": "BuildOptions", "description": "Optional arguments to enable specific features of builds.", "type": "object", "properties": { "substitutionOption": { - "enum": [ - "MUST_MATCH", - "ALLOW_LOOSE" - ], "description": "SubstitutionOption to allow unmatch substitutions.", "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" ] }, "requestedVerifyOption": { + "enumDescriptions": [ + "Not a verifiable build. (default)", + "Verified build." + ], "enum": [ "NOT_VERIFIED", "VERIFIED" ], "description": "Requested verifiability options.", - "type": "string", - "enumDescriptions": [ - "Not a verifiable build. (default)", - "Verified build." - ] + "type": "string" }, "sourceProvenanceHash": { "enumDescriptions": [ @@ -831,8 +998,7 @@ }, "type": "array" } - }, - "id": "BuildOptions" + } }, "StorageSource": { "description": "StorageSource describes the location of the source in an archive file in\nGoogle Cloud Storage.", @@ -866,44 +1032,44 @@ "type": "array" }, "images": { - "description": "Images that were built as a part of the build.", "items": { "$ref": "BuiltImage" }, - "type": "array" + "type": "array", + "description": "Images that were built as a part of the build." } }, "id": "Results" }, "BuildOperationMetadata": { + "description": "Metadata for build operations.", "type": "object", "properties": { "build": { - "description": "The build that the operation is tracking.", - "$ref": "Build" + "$ref": "Build", + "description": "The build that the operation is tracking." } }, - "id": "BuildOperationMetadata", - "description": "Metadata for build operations." + "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": { + "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." + }, "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": { - "description": "A copy of the build's source.repo_source, if exists, with any\nrevisions resolved.", - "$ref": "RepoSource" - }, - "resolvedStorageSource": { - "$ref": "StorageSource", - "description": "A copy of the build's source.storage_source, if exists, with any\ngenerations resolved." } }, "id": "SourceProvenance" @@ -913,179 +1079,13 @@ "type": "object", "properties": {}, "id": "CancelOperationRequest" - }, - "ListBuildTriggersResponse": { - "description": "Response containing existing BuildTriggers.", - "type": "object", - "properties": { - "triggers": { - "description": "BuildTriggers for the project, sorted by create_time descending.", - "items": { - "$ref": "BuildTrigger" - }, - "type": "array" - } - }, - "id": "ListBuildTriggersResponse" - }, - "Operation": { - "id": "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" - }, - "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" - } - } - }, - "BuiltImage": { - "type": "object", - "properties": { - "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", - "description": "BuiltImage describes an image built by the pipeline." - }, - "Hash": { - "description": "Container message for hash values.", - "type": "object", - "properties": { - "value": { - "format": "byte", - "description": "The hash value.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "No hash requested.", - "Use a sha256 hash." - ], - "enum": [ - "NONE", - "SHA256" - ], - "description": "The type of hash that was performed.", - "type": "string" - } - }, - "id": "Hash" - }, - "RepoSource": { - "description": "RepoSource describes the location of the source in a Google Cloud Source\nRepository.", - "type": "object", - "properties": { - "commitSha": { - "description": "Explicit commit SHA to build.", - "type": "string" - }, - "tagName": { - "description": "Name of the tag to build.", - "type": "string" - }, - "branchName": { - "description": "Name of the branch to build.", - "type": "string" - }, - "repoName": { - "description": "Name of the repo. If omitted, the name \"default\" is assumed.", - "type": "string" - }, - "projectId": { - "description": "ID of the project that owns the repo. If omitted, the project ID requesting\nthe build is assumed.", - "type": "string" - } - }, - "id": "RepoSource" - }, - "BuildStep": { - "id": "BuildStep", - "description": "BuildStep describes a step to perform in the build pipeline.", - "type": "object", - "properties": { - "secretEnv": { - "items": { - "type": "string" - }, - "type": "array", - "description": "A list of environment variables which are encrypted using a Cloud KMS\ncrypto key. These values must be specified in the build's secrets." - }, - "id": { - "description": "Optional unique identifier for this build step, used in wait_for to\nreference this build step as a dependency.", - "type": "string" - }, - "dir": { - "type": "string", - "description": "Working directory (relative to project source root) to use when running\nthis operation's container." - }, - "env": { - "description": "A list of environment variable definitions to be used when running a step.\n\nThe elements are of the form \"KEY=VALUE\" for the environment variable \"KEY\"\nbeing given the value \"VALUE\".", - "items": { - "type": "string" - }, - "type": "array" - }, - "waitFor": { - "description": "The ID(s) of the step(s) that this build step depends on.\nThis build step will not start until all the build steps in wait_for\nhave completed successfully. If wait_for is empty, this build step will\nstart when all previous build steps in the Build.Steps list have completed\nsuccessfully.", - "items": { - "type": "string" - }, - "type": "array" - }, - "args": { - "description": "A list of arguments that will be presented to the step when it is started.\n\nIf the image used to run the step's container has an entrypoint, these args\nwill be used as arguments to that entrypoint. If the image does not define\nan entrypoint, the first element in args will be used as the entrypoint,\nand the remainder will be used as arguments.", - "items": { - "type": "string" - }, - "type": "array" - }, - "name": { - "description": "The name of the container image that will run this particular build step.\n\nIf the image is already available in the host's Docker daemon's cache, it\nwill be run directly. If not, the host will attempt to pull the image\nfirst, using the builder service account's credentials if necessary.\n\nThe Docker daemon's cache will already have the latest versions of all of\nthe officially supported build steps\n([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/GoogleCloudPlatform/cloud-builders)).\nThe Docker daemon will also have cached many of the layers for some popular\nimages, like \"ubuntu\", \"debian\", but they will be refreshed at the time you\nattempt to use them.\n\nIf you built an image in a previous build step, it will be stored in the\nhost's Docker daemon's cache and is available to use as the name for a\nlater build step.", - "type": "string" - }, - "entrypoint": { - "description": "Optional entrypoint to be used instead of the build step image's default\nIf unset, the image's default will be used.", - "type": "string" - } - } } }, - "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 Build", "auth": { "oauth2": { diff --git a/DiscoveryJson/clouddebugger_v2.json b/DiscoveryJson/clouddebugger_v2.json index 908a02d716..c0ae64b548 100644 --- a/DiscoveryJson/clouddebugger_v2.json +++ b/DiscoveryJson/clouddebugger_v2.json @@ -1,340 +1,424 @@ { - "schemas": { - "SourceContext": { - "properties": { - "gerrit": { - "description": "A SourceContext referring to a Gerrit project.", - "$ref": "GerritSourceContext" - }, - "cloudWorkspace": { - "$ref": "CloudWorkspaceSourceContext", - "description": "A SourceContext referring to a snapshot in a cloud workspace." - }, - "cloudRepo": { - "$ref": "CloudRepoSourceContext", - "description": "A SourceContext referring to a revision in a cloud repo." - }, - "git": { - "description": "A SourceContext referring to any third party Git repo (e.g. GitHub).", - "$ref": "GitSourceContext" - } - }, - "id": "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" - }, - "CloudRepoSourceContext": { - "id": "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" - } - } - }, - "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)." - } - }, - "id": "RegisterDebuggeeResponse" - }, - "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" - }, - "GetBreakpointResponse": { - "description": "Response for getting breakpoint information.", - "type": "object", - "properties": { - "breakpoint": { - "$ref": "Breakpoint", - "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set." - } - }, - "id": "GetBreakpointResponse" - }, - "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": { - "description": { - "description": "Status message text.", - "$ref": "FormatMessage" - }, - "isError": { - "description": "Distinguishes errors from informational messages.", - "type": "boolean" - }, - "refersTo": { - "enumDescriptions": [ - "Status doesn't refer to any particular input.", - "Status applies to the breakpoint and is related to its location.", - "Status applies to the breakpoint and is related to its condition.", - "Status applies to the breakpoint and is related to its expressions.", - "Status applies to the breakpoint and is related to its age.", - "Status applies to the entire variable.", - "Status applies to variable value (variable name is valid)." - ], - "enum": [ - "UNSPECIFIED", - "BREAKPOINT_SOURCE_LOCATION", - "BREAKPOINT_CONDITION", - "BREAKPOINT_EXPRESSION", - "BREAKPOINT_AGE", - "VARIABLE_NAME", - "VARIABLE_VALUE" - ], - "description": "Reference to which the message applies.", - "type": "string" - } - }, - "id": "StatusMessage" - }, - "GitSourceContext": { - "description": "A GitSourceContext denotes a particular revision in a third party Git\nrepository (e.g. GitHub).", - "type": "object", - "properties": { - "revisionId": { - "description": "Git commit hash.\nrequired.", - "type": "string" - }, - "url": { - "type": "string", - "description": "Git repository URL." + "resources": { + "debugger": { + "resources": { + "debuggees": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListDebuggeesResponse" + }, + "parameters": { + "includeInactive": { + "location": "query", + "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active.", + "type": "boolean" + }, + "project": { + "type": "string", + "location": "query", + "description": "Project number of a Google Cloud project whose debuggees to list." + }, + "clientVersion": { + "location": "query", + "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/debugger/debuggees", + "path": "v2/debugger/debuggees", + "id": "clouddebugger.debugger.debuggees.list", + "description": "Lists all the debuggees that the user can set breakpoints to." + } + }, + "resources": { + "breakpoints": { + "methods": { + "list": { + "response": { + "$ref": "ListBreakpointsResponse" + }, + "parameterOrder": [ + "debuggeeId" + ], + "httpMethod": "GET", + "parameters": { + "waitToken": { + "description": "A wait token that, if specified, blocks the call until the breakpoints\nlist has changed, or a server selected timeout has expired. The value\nshould be set from the last response. The error code\n`google.rpc.Code.ABORTED` (RPC) is returned on wait timeout, which\nshould be called again with the same `wait_token`.", + "type": "string", + "location": "query" + }, + "clientVersion": { + "location": "query", + "description": "The client version making the call.\nFollowing: `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" + }, + "debuggeeId": { + "type": "string", + "required": true, + "location": "path", + "description": "ID of the debuggee whose breakpoints to list." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "id": "clouddebugger.debugger.debuggees.breakpoints.list", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "description": "Lists all breakpoints for the debuggee." + }, + "get": { + "parameters": { + "breakpointId": { + "type": "string", + "required": true, + "location": "path", + "description": "ID of the breakpoint to get." + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoint to get.", + "type": "string", + "required": true, + "location": "path" + }, + "clientVersion": { + "description": "The client version making the call.\nFollowing: `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/{breakpointId}", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "id": "clouddebugger.debugger.debuggees.breakpoints.get", + "description": "Gets breakpoint information.", + "httpMethod": "GET", + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "response": { + "$ref": "GetBreakpointResponse" + } + }, + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "parameters": { + "breakpointId": { + "description": "ID of the breakpoint to delete.", + "type": "string", + "required": true, + "location": "path" + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoint to delete.", + "type": "string", + "required": true, + "location": "path" + }, + "clientVersion": { + "type": "string", + "location": "query", + "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`)." + } + }, + "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." + }, + "set": { + "response": { + "$ref": "SetBreakpointResponse" + }, + "parameterOrder": [ + "debuggeeId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "parameters": { + "debuggeeId": { + "type": "string", + "required": true, + "location": "path", + "description": "ID of the debuggee where the breakpoint is to be set." + }, + "clientVersion": { + "location": "query", + "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "type": "string" + } + }, + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", + "id": "clouddebugger.debugger.debuggees.breakpoints.set", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", + "request": { + "$ref": "Breakpoint" + }, + "description": "Sets the breakpoint to the debuggee." + } + } + } + } } - }, - "id": "GitSourceContext" + } }, - "Variable": { - "type": "object", - "properties": { - "name": { - "description": "Name of the variable, if any.", - "type": "string" - }, - "type": { - "description": "Variable type (e.g. `MyClass`). If the variable is split with\n`var_table_index`, `type` goes next to `value`. The interpretation of\na type is agent specific. It is recommended to include the dynamic type\nrather than a static type of an object.", - "type": "string" - }, - "value": { - "description": "Simple value of the variable.", - "type": "string" - }, - "varTableIndex": { - "format": "int32", - "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.", - "type": "integer" - }, - "members": { - "description": "Members contained or pointed to by the variable.", - "items": { - "$ref": "Variable" + "controller": { + "resources": { + "debuggees": { + "methods": { + "register": { + "response": { + "$ref": "RegisterDebuggeeResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "parameters": {}, + "flatPath": "v2/controller/debuggees/register", + "id": "clouddebugger.controller.debuggees.register", + "path": "v2/controller/debuggees/register", + "request": { + "$ref": "RegisterDebuggeeRequest" + }, + "description": "Registers the debuggee with the controller service.\n\nAll agents attached to the same application should call this method with\nthe same request content to get back the same stable `debuggee_id`. Agents\nshould call this method again whenever `google.rpc.Code.NOT_FOUND` is\nreturned from any controller method.\n\nThis allows the controller service to disable the agent or recover from any\ndata loss. If the debuggee is disabled by the server, the response will\nhave `is_disabled` set to `true`." + } }, - "type": "array" - }, - "status": { - "description": "Status associated with the variable. This field will usually stay\nunset. A status of a single variable only applies to that variable or\nexpression. The rest of breakpoint data still remains valid. Variables\nmight be reported in error state even when breakpoint is not in final\nstate.\n\nThe message may refer to variable name with `refers_to` set to\n`VARIABLE_NAME`. Alternatively `refers_to` will be set to `VARIABLE_VALUE`.\nIn either case variable value and members will be unset.\n\nExample of error message applied to name: `Invalid expression syntax`.\n\nExample of information message applied to value: `Not captured`.\n\nExamples of error message applied to value:\n\n* `Malformed string`,\n* `Field f not found in class C`\n* `Null pointer dereference`", - "$ref": "StatusMessage" + "resources": { + "breakpoints": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "debuggeeId" + ], + "response": { + "$ref": "ListActiveBreakpointsResponse" + }, + "parameters": { + "successOnTimeout": { + "description": "If set to `true`, returns `google.rpc.Code.OK` status and sets the\n`wait_expired` response field to `true` when the server-selected timeout\nhas expired (recommended).\n\nIf set to `false`, returns `google.rpc.Code.ABORTED` status when the\nserver-selected timeout has expired (deprecated).", + "type": "boolean", + "location": "query" + }, + "debuggeeId": { + "location": "path", + "description": "Identifies the debuggee.", + "type": "string", + "required": true + }, + "waitToken": { + "description": "A wait 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 last returned response.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "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\nservice.\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": { + "type": "string", + "required": true, + "location": "path", + "description": "Identifies the debuggee being debugged." + }, + "id": { + "description": "Breakpoint identifier, unique in the scope of the debuggee.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", + "id": "clouddebugger.controller.debuggees.breakpoints.update", + "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}" + } + } + } + } } - }, - "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." + } + } + }, + "parameters": { + "key": { + "type": "string", + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token." }, - "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.", - "items": { - "$ref": "Variable" - }, - "type": "array" - }, - "locals": { - "description": "Set of local variables at the stack frame location.\nNote that this might not be populated for all stack frames.", - "items": { - "$ref": "Variable" - }, - "type": "array" - }, - "location": { - "$ref": "SourceLocation", - "description": "Source location of the call site." - } - }, - "id": "StackFrame" + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" }, - "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" - } - }, - "id": "RepoId" + "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." }, - "FormatMessage": { - "type": "object", - "properties": { - "format": { - "description": "Format template for the message. The `format` uses placeholders `$0`,\n`$1`, etc. to reference parameters. `$$` can be used to denote the `$`\ncharacter.\n\nExamples:\n\n* `Failed to load '$0' which helps debug $1 the first time it\n is loaded. Again, $0 is very important.`\n* `Please pay $$10 to use $0 instead of $1.`", - "type": "string" - }, - "parameters": { - "description": "Optional parameters to be embedded into the message.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "FormatMessage", - "description": "Represents a message with parameters." + "pp": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "location": "query" }, - "ExtendedSourceContext": { - "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.", - "type": "object", - "properties": { - "context": { - "$ref": "SourceContext", - "description": "Any source context." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels with user defined metadata.", - "type": "object" - } - }, - "id": "ExtendedSourceContext" + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "ListDebuggeesResponse": { - "description": "Response for listing debuggees.", - "type": "object", - "properties": { - "debuggees": { - "items": { - "$ref": "Debuggee" - }, - "type": "array", - "description": "List of debuggees accessible to the calling user.\nNote that the `description` field is the only human readable field\nthat should be displayed to the user.\nThe fields `debuggee.id` and `description` fields are guaranteed to be\nset on each debuggee." - } - }, - "id": "ListDebuggeesResponse" + "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": { + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean", + "location": "query" }, - "AliasContext": { - "id": "AliasContext", - "description": "An alias to a repo revision.", - "type": "object", - "properties": { - "name": { - "description": "The alias name.", - "type": "string" - }, - "kind": { - "type": "string", - "enumDescriptions": [ - "Do not use.", - "Git tag", - "Git branch", - "OTHER is used to specify non-standard aliases, those not of the kinds\nabove. For example, if a Git repo has a ref named \"refs/foo/bar\", it\nis considered to be of kind OTHER." - ], - "enum": [ - "ANY", - "FIXED", - "MOVABLE", - "OTHER" - ], - "description": "The alias kind." - } - } + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "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" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "SourceLocation": { - "properties": { - "line": { - "format": "int32", - "description": "Line inside the file. The first line in the file has the value `1`.", - "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" + "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" + } + }, + "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": "", + "documentationLink": "http://cloud.google.com/debugger", + "id": "clouddebugger:v2", + "revision": "20170710", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { "Debuggee": { - "description": "Represents the application to debug. 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.\nThe agents attached to the same debuggee are identified by using exactly the\nsame field values when registering.", "type": "object", "properties": { - "uniquifier": { - "description": "Debuggee uniquifier within the project.\nAny string that identifies the application within the project can be used.\nIncluding environment and version or build IDs is recommended.", - "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.\n\nNOTE: This field is deprecated. Consumers should use\n`ext_source_contexts` if it is not empty. Debug agents should populate\nboth this field and `ext_source_contexts`.", - "items": { - "$ref": "SourceContext" - }, - "type": "array" - }, - "extSourceContexts": { - "description": "References to the locations and revisions of the source code used in the\ndeployed application.\n\nContexts describing a remote repo related to the source code\nhave a `category` label of `remote_repo`. Source snapshot source\ncontexts have a `category` of `snapshot`.", - "items": { - "$ref": "ExtendedSourceContext" - }, - "type": "array" - }, "labels": { "additionalProperties": { "type": "string" @@ -354,22 +438,48 @@ "description": "Project the debuggee is associated with.\nUse the project number when registering a Google Cloud Platform project.", "type": "string" }, + "id": { + "description": "Unique identifier for the debuggee generated by the controller service.", + "type": "string" + }, + "agentVersion": { + "type": "string", + "description": "Version ID of the agent release. The version ID is structured as\nfollowing: `domain/type/vmajor.minor` (for example\n`google.com/gcp-java/v1.1`)." + }, "isDisabled": { "description": "If set to `true`, indicates that the agent should disable itself and\ndetach from the debuggee.", "type": "boolean" }, - "agentVersion": { - "description": "Version ID of the agent release. The version ID is structured as\nfollowing: `domain/type/vmajor.minor` (for example\n`google.com/gcp-java/v1.1`).", + "uniquifier": { + "description": "Debuggee uniquifier within the project.\nAny string that identifies the application within the project can be used.\nIncluding environment and version or build IDs is recommended.", "type": "string" }, - "id": { - "type": "string", - "description": "Unique identifier for the debuggee generated by the controller service." + "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.\n\nNOTE: This field is deprecated. Consumers should use\n`ext_source_contexts` if it is not empty. Debug agents should populate\nboth this field and `ext_source_contexts`.", + "items": { + "$ref": "SourceContext" + }, + "type": "array" + }, + "extSourceContexts": { + "description": "References to the locations and revisions of the source code used in the\ndeployed application.\n\nContexts describing a remote repo related to the source code\nhave a `category` label of `remote_repo`. Source snapshot source\ncontexts have a `category` of `snapshot`.", + "items": { + "$ref": "ExtendedSourceContext" + }, + "type": "array" } }, - "id": "Debuggee" + "id": "Debuggee", + "description": "Represents the application to debug. 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.\nThe agents attached to the same debuggee are identified by using exactly the\nsame field values when registering." }, "ProjectRepoId": { + "id": "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": { "repoName": { "description": "The name of the repo. Leave empty for the default repo.", @@ -379,15 +489,17 @@ "description": "The ID of the project.", "type": "string" } - }, - "id": "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" + } }, "ListActiveBreakpointsResponse": { + "id": "ListActiveBreakpointsResponse", "description": "Response for listing active breakpoints.", "type": "object", "properties": { + "waitExpired": { + "description": "The `wait_expired` field is set to true by the server when the\nrequest times out and the field `success_on_timeout` is set to true.", + "type": "boolean" + }, "nextWaitToken": { "description": "A wait token that can be used in the next method call to block until\nthe list of breakpoints changes.", "type": "string" @@ -398,13 +510,8 @@ "$ref": "Breakpoint" }, "type": "array" - }, - "waitExpired": { - "type": "boolean", - "description": "The `wait_expired` field is set to true by the server when the\nrequest times out and the field `success_on_timeout` is set to true." } - }, - "id": "ListActiveBreakpointsResponse" + } }, "CloudWorkspaceSourceContext": { "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.", @@ -428,18 +535,7 @@ "id": "UpdateActiveBreakpointResponse" }, "GerritSourceContext": { - "id": "GerritSourceContext", - "description": "A SourceContext referring to a Gerrit project.", - "type": "object", "properties": { - "aliasContext": { - "$ref": "AliasContext", - "description": "An alias, which may be a branch or tag." - }, - "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" - }, "revisionId": { "description": "A revision (commit) ID.", "type": "string" @@ -451,23 +547,34 @@ "aliasName": { "description": "The name of an alias (branch, tag, etc.).", "type": "string" + }, + "aliasContext": { + "description": "An alias, which may be a branch or tag.", + "$ref": "AliasContext" + }, + "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" } - } + }, + "id": "GerritSourceContext", + "description": "A SourceContext referring to a Gerrit project.", + "type": "object" }, "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." + "description": "The ID of the repo containing the workspace.", + "$ref": "RepoId" }, "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" } - } + }, + "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" }, "ListBreakpointsResponse": { "description": "Response for listing breakpoints.", @@ -488,23 +595,39 @@ "id": "ListBreakpointsResponse" }, "Breakpoint": { - "description": "Represents the breakpoint specification, status and results.", - "type": "object", "properties": { + "expressions": { + "items": { + "type": "string" + }, + "type": "array", + "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." + }, + "evaluatedExpressions": { + "description": "Values of evaluated expressions at breakpoint time.\nThe evaluated expressions appear in exactly the same order they\nare listed in the `expressions` field.\nThe `name` field holds the original expression text, the `value` or\n`members` field holds the result of the evaluated expression.\nIf the expression cannot be evaluated, the `status` inside the `Variable`\nwill indicate an error and contain the error text.", + "items": { + "$ref": "Variable" + }, + "type": "array" + }, + "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.", "items": { "$ref": "StackFrame" }, - "type": "array", - "description": "The stack at breakpoint time." + "type": "array" }, "condition": { "description": "Condition that triggers the breakpoint.\nThe condition is a compound boolean expression composed using expressions\nin a programming language at the source location.", "type": "string" }, "status": { - "description": "Breakpoint status.\n\nThe status includes an error flag and a human readable message.\nThis field is usually unset. The message can be either\ninformational or an error message. Regardless, clients should always\ndisplay the text message back to the user.\n\nError status indicates complete failure of the breakpoint.\n\nExample (non-final state): `Still loading symbols...`\n\nExamples (final state):\n\n* `Invalid line number` referring to location\n* `Field f not found in class C` referring to condition", - "$ref": "StatusMessage" + "$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", @@ -523,537 +646,414 @@ "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." - ], - "enum": [ - "INFO", - "WARNING", - "ERROR" ] }, "id": { - "description": "Breakpoint identifier, unique in the scope of the debuggee.", - "type": "string" + "type": "string", + "description": "Breakpoint identifier, unique in the scope of the debuggee." }, "location": { "$ref": "SourceLocation", "description": "Breakpoint source location." }, "finalTime": { - "type": "string", - "format": "google-datetime", - "description": "Time this breakpoint was finalized as seen by the server in seconds\nresolution." - }, - "variableTable": { - "description": "The `variable_table` exists to aid with computation, memory and network\ntraffic optimization. It enables storing a variable once and reference\nit from multiple variables, including variables stored in the\n`variable_table` itself.\nFor example, the same `this` object, which may appear at many levels of\nthe stack, can have all of its data stored once in this table. The\nstack frame variables then would hold only a reference to it.\n\nThe variable `var_table_index` field is an index into this repeated field.\nThe stored objects are nameless and get their name from the referencing\nvariable. The effective variable is a merge of the referencing variable\nand the referenced variable.", - "items": { - "$ref": "Variable" - }, - "type": "array" - }, - "createTime": { "format": "google-datetime", - "description": "Time this breakpoint was created by the server in seconds resolution.", - "type": "string" - }, - "logMessageFormat": { - "description": "Only relevant when action is `LOG`. Defines the message to log when\nthe breakpoint hits. The message may include parameter placeholders `$0`,\n`$1`, etc. These placeholders are replaced with the evaluated value\nof the appropriate expression. Expressions not referenced in\n`log_message_format` are not logged.\n\nExample: `Message received, id = $0, count = $1` with\n`expressions` = `[ message.id, message.count ]`.", + "description": "Time this breakpoint was finalized as seen by the server in seconds\nresolution.", "type": "string" }, - "labels": { - "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.", - "type": "object", - "additionalProperties": { - "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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.", + "variableTable": { + "description": "The `variable_table` exists to aid with computation, memory and network\ntraffic optimization. It enables storing a variable once and reference\nit from multiple variables, including variables stored in the\n`variable_table` itself.\nFor example, the same `this` object, which may appear at many levels of\nthe stack, can have all of its data stored once in this table. The\nstack frame variables then would hold only a reference to it.\n\nThe variable `var_table_index` field is an index into this repeated field.\nThe stored objects are nameless and get their name from the referencing\nvariable. The effective variable is a merge of the referencing variable\nand the referenced variable.", "items": { "$ref": "Variable" }, "type": "array" }, - "isFinalState": { - "description": "When true, indicates that this is a final result and the\nbreakpoint state will not change from here on.", - "type": "boolean" - } - }, - "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)." - } - }, - "id": "SetBreakpointResponse" - }, - "UpdateActiveBreakpointRequest": { - "description": "Request to update an active breakpoint.", - "type": "object", - "properties": { - "breakpoint": { - "description": "Updated breakpoint information.\nThe field `id` must be set.", - "$ref": "Breakpoint" - } - }, - "id": "UpdateActiveBreakpointRequest" - } - }, - "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": "Manage cloud debugger" + "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" }, - "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": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListDebuggeesResponse" - }, - "parameters": { - "project": { - "location": "query", - "description": "Project number of a Google Cloud project whose debuggees to list.", - "type": "string" - }, - "clientVersion": { - "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string", - "location": "query" - }, - "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", - "path": "v2/debugger/debuggees", - "id": "clouddebugger.debugger.debuggees.list", - "description": "Lists all the debuggees that the user can set breakpoints to." - } - }, - "resources": { - "breakpoints": { - "methods": { - "delete": { - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "id": "clouddebugger.debugger.debuggees.breakpoints.delete", - "description": "Deletes the breakpoint from the debuggee.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "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 delete.", - "type": "string", - "required": true, - "location": "path" - }, - "clientVersion": { - "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string", - "location": "query" - }, - "breakpointId": { - "location": "path", - "description": "ID of the breakpoint to delete.", - "type": "string", - "required": true - } - }, - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}" - }, - "set": { - "httpMethod": "POST", - "parameterOrder": [ - "debuggeeId" - ], - "response": { - "$ref": "SetBreakpointResponse" - }, - "parameters": { - "debuggeeId": { - "location": "path", - "description": "ID of the debuggee where the breakpoint is to be set.", - "type": "string", - "required": true - }, - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "id": "clouddebugger.debugger.debuggees.breakpoints.set", - "description": "Sets the breakpoint to the debuggee.", - "request": { - "$ref": "Breakpoint" - } - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListBreakpointsResponse" - }, - "parameterOrder": [ - "debuggeeId" - ], - "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.", - "type": "string", - "required": true, - "location": "path" - }, - "waitToken": { - "location": "query", - "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" - }, - "clientVersion": { - "location": "query", - "description": "The client version making the call.\nFollowing: `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." - }, - "includeAllUsers": { - "type": "boolean", - "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." - }, - "includeInactive": { - "type": "boolean", - "location": "query", - "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints." - } - }, - "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." - }, - "get": { - "description": "Gets breakpoint information.", - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "httpMethod": "GET", - "response": { - "$ref": "GetBreakpointResponse" - }, - "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.\nFollowing: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string" - }, - "breakpointId": { - "description": "ID of the breakpoint to get.", - "type": "string", - "required": true, - "location": "path" - }, - "debuggeeId": { - "description": "ID of the debuggee whose breakpoint to get.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "id": "clouddebugger.debugger.debuggees.breakpoints.get", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}" - } - } - } - } + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.", + "type": "object" + }, + "createTime": { + "format": "google-datetime", + "description": "Time this breakpoint was created by the server in seconds resolution.", + "type": "string" } - } + }, + "id": "Breakpoint", + "description": "Represents the breakpoint specification, status and results.", + "type": "object" }, - "controller": { - "resources": { - "debuggees": { - "methods": { - "register": { - "response": { - "$ref": "RegisterDebuggeeResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": {}, - "flatPath": "v2/controller/debuggees/register", - "id": "clouddebugger.controller.debuggees.register", - "path": "v2/controller/debuggees/register", - "request": { - "$ref": "RegisterDebuggeeRequest" - }, - "description": "Registers the debuggee with the controller service.\n\nAll agents attached to the same application should call this method with\nthe same request content to get back the same stable `debuggee_id`. Agents\nshould call this method again whenever `google.rpc.Code.NOT_FOUND` is\nreturned from any controller method.\n\nThis allows the controller service to disable the agent or recover from any\ndata loss. If the debuggee is disabled by the server, the response will\nhave `is_disabled` set to `true`." - } - }, - "resources": { - "breakpoints": { - "methods": { - "list": { - "id": "clouddebugger.controller.debuggees.breakpoints.list", - "path": "v2/controller/debuggees/{debuggeeId}/breakpoints", - "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": { - "successOnTimeout": { - "description": "If set to `true`, returns `google.rpc.Code.OK` status and sets the\n`wait_expired` response field to `true` when the server-selected timeout\nhas expired (recommended).\n\nIf set to `false`, returns `google.rpc.Code.ABORTED` status when the\nserver-selected timeout has expired (deprecated).", - "type": "boolean", - "location": "query" - }, - "debuggeeId": { - "description": "Identifies the debuggee.", - "type": "string", - "required": true, - "location": "path" - }, - "waitToken": { - "location": "query", - "description": "A wait 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 last returned response.", - "type": "string" - } - }, - "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints" - }, - "update": { - "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\nservice.\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.", - "httpMethod": "PUT", - "parameterOrder": [ - "debuggeeId", - "id" - ], - "response": { - "$ref": "UpdateActiveBreakpointResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "id": { - "description": "Breakpoint identifier, unique in the scope of the debuggee.", - "type": "string", - "required": true, - "location": "path" - }, - "debuggeeId": { - "location": "path", - "description": "Identifies the debuggee being debugged.", - "type": "string", - "required": true - } - } - } - } - } - } + "UpdateActiveBreakpointRequest": { + "description": "Request to update an active breakpoint.", + "type": "object", + "properties": { + "breakpoint": { + "description": "Updated breakpoint information.\nThe field `id` must be set.", + "$ref": "Breakpoint" + } + }, + "id": "UpdateActiveBreakpointRequest" + }, + "SetBreakpointResponse": { + "type": "object", + "properties": { + "breakpoint": { + "$ref": "Breakpoint", + "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fileds)." + } + }, + "id": "SetBreakpointResponse", + "description": "Response for setting a breakpoint." + }, + "SourceContext": { + "id": "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": { + "cloudWorkspace": { + "$ref": "CloudWorkspaceSourceContext", + "description": "A SourceContext referring to a snapshot in a cloud workspace." + }, + "cloudRepo": { + "$ref": "CloudRepoSourceContext", + "description": "A SourceContext referring to a revision in a cloud repo." + }, + "git": { + "description": "A SourceContext referring to any third party Git repo (e.g. GitHub).", + "$ref": "GitSourceContext" + }, + "gerrit": { + "$ref": "GerritSourceContext", + "description": "A SourceContext referring to a Gerrit project." } } - } - }, - "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" + "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": { + "$ref": "AliasContext", + "description": "An alias, which may be a branch or tag." + } + }, + "id": "CloudRepoSourceContext" }, - "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" + "RegisterDebuggeeRequest": { + "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", + "description": "Request to register a debuggee.", + "type": "object" + }, + "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)." + } + }, + "id": "RegisterDebuggeeResponse" + }, + "GetBreakpointResponse": { + "description": "Response for getting breakpoint information.", + "type": "object", + "properties": { + "breakpoint": { + "$ref": "Breakpoint", + "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set." + } + }, + "id": "GetBreakpointResponse" + }, + "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": { + "description": { + "description": "Status message text.", + "$ref": "FormatMessage" + }, + "isError": { + "description": "Distinguishes errors from informational messages.", + "type": "boolean" + }, + "refersTo": { + "enumDescriptions": [ + "Status doesn't refer to any particular input.", + "Status applies to the breakpoint and is related to its location.", + "Status applies to the breakpoint and is related to its condition.", + "Status applies to the breakpoint and is related to its expressions.", + "Status applies to the breakpoint and is related to its age.", + "Status applies to the entire variable.", + "Status applies to variable value (variable name is valid)." + ], + "enum": [ + "UNSPECIFIED", + "BREAKPOINT_SOURCE_LOCATION", + "BREAKPOINT_CONDITION", + "BREAKPOINT_EXPRESSION", + "BREAKPOINT_AGE", + "VARIABLE_NAME", + "VARIABLE_VALUE" + ], + "description": "Reference to which the message applies.", + "type": "string" + } + }, + "id": "StatusMessage" }, - "quotaUser": { - "description": "Available 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" + "GitSourceContext": { + "description": "A GitSourceContext denotes a particular revision in a third party Git\nrepository (e.g. GitHub).", + "type": "object", + "properties": { + "revisionId": { + "description": "Git commit hash.\nrequired.", + "type": "string" + }, + "url": { + "description": "Git repository URL.", + "type": "string" + } + }, + "id": "GitSourceContext" }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "location": "query" + "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.", + "items": { + "$ref": "Variable" + }, + "type": "array" + }, + "status": { + "$ref": "StatusMessage", + "description": "Status associated with the variable. This field will usually stay\nunset. A status of a single variable only applies to that variable or\nexpression. The rest of breakpoint data still remains valid. Variables\nmight be reported in error state even when breakpoint is not in final\nstate.\n\nThe message may refer to variable name with `refers_to` set to\n`VARIABLE_NAME`. Alternatively `refers_to` will be set to `VARIABLE_VALUE`.\nIn either case variable value and members will be unset.\n\nExample of error message applied to name: `Invalid expression syntax`.\n\nExample of information message applied to value: `Not captured`.\n\nExamples of error message applied to value:\n\n* `Malformed string`,\n* `Field f not found in class C`\n* `Null pointer dereference`" + }, + "name": { + "description": "Name of the variable, if any.", + "type": "string" + }, + "type": { + "description": "Variable type (e.g. `MyClass`). If the variable is split with\n`var_table_index`, `type` goes next to `value`. The interpretation of\na type is agent specific. It is recommended to include the dynamic type\nrather than a static type of an object.", + "type": "string" + }, + "value": { + "description": "Simple value of the variable.", + "type": "string" + }, + "varTableIndex": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "Variable" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "StackFrame": { + "description": "Represents a stack frame context.", + "type": "object", + "properties": { + "locals": { + "description": "Set of local variables at the stack frame location.\nNote that this might not be populated for all stack frames.", + "items": { + "$ref": "Variable" + }, + "type": "array" + }, + "location": { + "$ref": "SourceLocation", + "description": "Source location of the call site." + }, + "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.", + "items": { + "$ref": "Variable" + }, + "type": "array" + } + }, + "id": "StackFrame" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "RepoId": { + "description": "A unique identifier for a cloud repo.", + "type": "object", + "properties": { + "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" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "FormatMessage": { + "description": "Represents a message with parameters.", + "type": "object", + "properties": { + "parameters": { + "description": "Optional parameters to be embedded into the message.", + "items": { + "type": "string" + }, + "type": "array" + }, + "format": { + "description": "Format template for the message. The `format` uses placeholders `$0`,\n`$1`, etc. to reference parameters. `$$` can be used to denote the `$`\ncharacter.\n\nExamples:\n\n* `Failed to load '$0' which helps debug $1 the first time it\n is loaded. Again, $0 is very important.`\n* `Please pay $$10 to use $0 instead of $1.`", + "type": "string" + } + }, + "id": "FormatMessage" }, - "prettyPrint": { - "default": "true", - "type": "boolean", - "location": "query", - "description": "Returns response with indentations and line breaks." + "ExtendedSourceContext": { + "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.", + "type": "object", + "properties": { + "context": { + "$ref": "SourceContext", + "description": "Any source context." + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Labels with user defined metadata." + } + }, + "id": "ExtendedSourceContext" }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "ListDebuggeesResponse": { + "description": "Response for listing debuggees.", + "type": "object", + "properties": { + "debuggees": { + "items": { + "$ref": "Debuggee" + }, + "type": "array", + "description": "List of debuggees accessible to the calling user.\nNote that the `description` field is the only human readable field\nthat should be displayed to the user.\nThe fields `debuggee.id` and `description` fields are guaranteed to be\nset on each debuggee." + } + }, + "id": "ListDebuggeesResponse" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "AliasContext": { + "type": "object", + "properties": { + "name": { + "description": "The alias name.", + "type": "string" + }, + "kind": { + "enum": [ + "ANY", + "FIXED", + "MOVABLE", + "OTHER" + ], + "description": "The alias kind.", + "type": "string", + "enumDescriptions": [ + "Do not use.", + "Git tag", + "Git branch", + "OTHER is used to specify non-standard aliases, those not of the kinds\nabove. For example, if a Git repo has a ref named \"refs/foo/bar\", it\nis considered to be of kind OTHER." + ] + } + }, + "id": "AliasContext", + "description": "An alias to a repo revision." }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "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" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "SourceLocation": { + "type": "object", + "properties": { + "line": { + "format": "int32", + "description": "Line inside the file. The first line in the file has the value `1`.", + "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." } }, - "version": "v2", - "baseUrl": "https://clouddebugger.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Examines the call stack and variables of a running application without stopping or slowing it down.\n", - "servicePath": "", - "basePath": "", - "id": "clouddebugger:v2", - "documentationLink": "http://cloud.google.com/debugger", - "revision": "20170710", - "discoveryVersion": "v1", - "version_module": "True" + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "protocol": "rest", + "canonicalName": "Cloud Debugger", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud_debugger": { + "description": "Manage cloud 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", + "ownerName": "Google" } diff --git a/DiscoveryJson/clouderrorreporting_v1beta1.json b/DiscoveryJson/clouderrorreporting_v1beta1.json index b33fafb058..e4622bb7da 100644 --- a/DiscoveryJson/clouderrorreporting_v1beta1.json +++ b/DiscoveryJson/clouderrorreporting_v1beta1.json @@ -1,22 +1,19 @@ { + "name": "clouderrorreporting", + "batchPath": "batch", + "title": "Stackdriver Error Reporting API", + "ownerName": "Google", "resources": { "projects": { "methods": { "deleteEvents": { - "flatPath": "v1beta1/projects/{projectsId}/events", - "path": "v1beta1/{+projectName}/events", - "id": "clouderrorreporting.projects.deleteEvents", - "description": "Deletes all error events of a given project.", - "httpMethod": "DELETE", - "parameterOrder": [ - "projectName" - ], "response": { "$ref": "DeleteEventsResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "projectName" ], + "httpMethod": "DELETE", "parameters": { "projectName": { "pattern": "^projects/[^/]+$", @@ -25,29 +22,42 @@ "type": "string", "required": true } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/events", + "id": "clouderrorreporting.projects.deleteEvents", + "path": "v1beta1/{+projectName}/events", + "description": "Deletes all error events of a given project." } }, "resources": { "events": { "methods": { "list": { - "description": "Lists the specified events.", "httpMethod": "GET", - "parameterOrder": [ - "projectName" - ], "response": { "$ref": "ListEventsResponse" }, + "parameterOrder": [ + "projectName" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "serviceFilter.version": { + "location": "query", + "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", + "type": "string" + }, "serviceFilter.resourceType": { "location": "query", "description": "[Optional] The exact value to match against\n[`ServiceContext.resource_type`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type).", "type": "string" }, "timeRange.period": { - "location": "query", "enum": [ "PERIOD_UNSPECIFIED", "PERIOD_1_HOUR", @@ -57,57 +67,51 @@ "PERIOD_30_DAYS" ], "description": "Restricts the query to the specified time range.", - "type": "string" + "type": "string", + "location": "query" }, "projectName": { - "type": "string", - "required": true, "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`." + "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`.", + "type": "string", + "required": true }, "groupId": { + "type": "string", "location": "query", - "description": "[Required] The group for which events shall be returned.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "[Optional] A `next_page_token` provided by a previous response.", - "type": "string" + "description": "[Required] The group for which events shall be returned." }, "serviceFilter.service": { "location": "query", "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", "type": "string" }, + "pageToken": { + "description": "[Optional] A `next_page_token` provided by a previous response.", + "type": "string", + "location": "query" + }, "pageSize": { "location": "query", "format": "int32", "description": "[Optional] The maximum number of results to return per response.", "type": "integer" - }, - "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/events", "path": "v1beta1/{+projectName}/events", - "id": "clouderrorreporting.projects.events.list" + "id": "clouderrorreporting.projects.events.list", + "description": "Lists the specified events." }, "report": { "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" }, - "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" }, @@ -115,44 +119,54 @@ "projectName" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "projectName": { - "location": "path", - "description": "[Required] The resource name of the Google Cloud Platform project. Written\nas `projects/` plus the\n[Google Cloud Platform project ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$" + "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 ID](https://support.google.com/cloud/answer/6158840).\nExample: `projects/my-project-123`." } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, "groupStats": { "methods": { "list": { + "path": "v1beta1/{+projectName}/groupStats", + "id": "clouderrorreporting.projects.groupStats.list", "description": "Lists the specified groups.", - "response": { - "$ref": "ListGroupStatsResponse" - }, + "httpMethod": "GET", "parameterOrder": [ "projectName" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "ListGroupStatsResponse" + }, "parameters": { + "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.", + "type": "string", + "required": true + }, + "timedCountDuration": { + "location": "query", + "format": "google-duration", + "description": "[Optional] The preferred duration for a single returned `TimedCount`.\nIf not set, no timed counts are returned.", + "type": "string" + }, "pageToken": { "description": "[Optional] A `next_page_token` provided by a previous response. To view\nadditional results, pass this token along with the identical query\nparameters as the first request.", "type": "string", "location": "query" }, "timeRange.period": { - "description": "Restricts the query to the specified time range.", - "type": "string", "location": "query", "enum": [ "PERIOD_UNSPECIFIED", @@ -161,39 +175,41 @@ "PERIOD_1_DAY", "PERIOD_1_WEEK", "PERIOD_30_DAYS" - ] + ], + "description": "Restricts the query to the specified time range.", + "type": "string" }, "alignment": { + "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`.", + "type": "string", "location": "query", "enum": [ "ERROR_COUNT_ALIGNMENT_UNSPECIFIED", "ALIGNMENT_EQUAL_ROUNDED", "ALIGNMENT_EQUAL_AT_END" - ], - "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`.", - "type": "string" + ] }, "groupId": { + "type": "string", "repeated": true, "location": "query", - "description": "[Optional] List all \u003ccode\u003eErrorGroupStats\u003c/code\u003e with these IDs.", - "type": "string" + "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)." + "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", + "type": "string" }, "pageSize": { - "format": "int32", - "description": "[Optional] The maximum number of results to return per response.\nDefault is 20.", "type": "integer", - "location": "query" + "location": "query", + "format": "int32", + "description": "[Optional] The maximum number of results to return per response.\nDefault is 20." }, "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" + "type": "string", + "location": "query" }, "order": { "description": "[Optional] The sort order in which the results are returned.\nDefault is `COUNT_DESC`.", @@ -217,55 +233,45 @@ "description": "[Optional] Time where the timed counts shall be aligned if rounded\nalignment is chosen. Default is 00:00 UTC.", "type": "string", "location": "query" - }, - "projectName": { - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - }, - "timedCountDuration": { - "format": "google-duration", - "description": "[Optional] The preferred duration for a single returned `TimedCount`.\nIf not set, no timed counts are returned.", - "type": "string", - "location": "query" } }, - "flatPath": "v1beta1/projects/{projectsId}/groupStats", - "id": "clouderrorreporting.projects.groupStats.list", - "path": "v1beta1/{+projectName}/groupStats" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/groupStats" } } }, "groups": { "methods": { "get": { + "response": { + "$ref": "ErrorGroup" + }, + "parameterOrder": [ + "groupName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "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", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/groups/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", "id": "clouderrorreporting.projects.groups.get", "path": "v1beta1/{+groupName}", - "description": "Get the specified group.", - "response": { - "$ref": "ErrorGroup" - }, - "parameterOrder": [ - "groupName" - ], - "httpMethod": "GET" + "description": "Get the specified group." }, "update": { + "id": "clouderrorreporting.projects.groups.update", + "path": "v1beta1/{+name}", "description": "Replace the data for the specified group.\nFails if the group does not exist.", "request": { "$ref": "ErrorGroup" @@ -279,19 +285,17 @@ "httpMethod": "PUT", "parameters": { "name": { + "type": "string", + "required": true, "pattern": "^projects/[^/]+/groups/[^/]+$", "location": "path", - "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", - "type": "string", - "required": true + "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", - "id": "clouderrorreporting.projects.groups.update", - "path": "v1beta1/{+name}" + "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}" } } } @@ -299,31 +303,52 @@ } }, "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "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.", + "default": "true", + "type": "boolean", + "location": "query" + }, + "bearer_token": { + "description": "OAuth bearer token.", "type": "string", "location": "query" }, - "prettyPrint": { + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" + }, + "upload_protocol": { + "type": "string", "location": "query", - "description": "Returns response with indentations and line breaks.", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + }, + "prettyPrint": { "default": "true", - "type": "boolean" + "type": "boolean", + "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\").", - "type": "string" + "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", - "location": "query" + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "$.xgafv": { "type": "string", @@ -339,6 +364,12 @@ "description": "V1 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", @@ -346,51 +377,24 @@ "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": { + "type": "string", "location": "query", - "description": "OAuth access token.", - "type": "string" + "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": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - }, - "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" } }, "version": "v1beta1", "baseUrl": "https://clouderrorreporting.googleapis.com/", - "servicePath": "", - "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", "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": "20170707", "documentationLink": "https://cloud.google.com/error-reporting/", @@ -399,10 +403,14 @@ "version_module": "True", "schemas": { "ListGroupStatsResponse": { - "id": "ListGroupStatsResponse", "description": "Contains a set of requested error group stats.", "type": "object", "properties": { + "timeRangeBegin": { + "format": "google-datetime", + "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.", + "type": "string" + }, "errorGroupStats": { "description": "The error group stats which match the given request.", "items": { @@ -411,17 +419,15 @@ "type": "array" }, "nextPageToken": { - "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": { - "format": "google-datetime", - "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.", + "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" }, "SourceReference": { + "description": "A reference to a particular snapshot of the source tree used to build and\ndeploy an application.", + "type": "object", "properties": { "repository": { "description": "Optional. A URI string identifying the repository.\nExample: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", @@ -432,41 +438,42 @@ "type": "string" } }, - "id": "SourceReference", - "description": "A reference to a particular snapshot of the source tree used to build and\ndeploy an application.", - "type": "object" + "id": "SourceReference" }, "DeleteEventsResponse": { - "description": "Response message for deleting error events.", - "type": "object", "properties": {}, - "id": "DeleteEventsResponse" + "id": "DeleteEventsResponse", + "description": "Response message for deleting error events.", + "type": "object" }, "ErrorEvent": { + "id": "ErrorEvent", + "description": "An error event which is returned by the Error Reporting system.", "type": "object", "properties": { + "serviceContext": { + "$ref": "ServiceContext", + "description": "The `ServiceContext` for which this error was reported." + }, "eventTime": { "format": "google-datetime", "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.", "type": "string" }, "context": { - "$ref": "ErrorContext", - "description": "Data about the context in which the error occurred." + "description": "Data about the context in which the error occurred.", + "$ref": "ErrorContext" }, "message": { "description": "The stack trace that was reported or logged by the service.", "type": "string" - }, - "serviceContext": { - "description": "The `ServiceContext` for which this error was reported.", - "$ref": "ServiceContext" } - }, - "id": "ErrorEvent", - "description": "An error event which is returned by the Error Reporting system." + } }, "ReportedErrorEvent": { + "id": "ReportedErrorEvent", + "description": "An error event which is reported to the Error Reporting system.", + "type": "object", "properties": { "context": { "$ref": "ErrorContext", @@ -477,26 +484,20 @@ "type": "string" }, "serviceContext": { - "description": "[Required] The service context in which this error has occurred.", - "$ref": "ServiceContext" + "$ref": "ServiceContext", + "description": "[Required] The service context in which this error has occurred." }, "eventTime": { "format": "google-datetime", "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.", "type": "string" } - }, - "id": "ReportedErrorEvent", - "description": "An error event which is reported to the Error Reporting system.", - "type": "object" + } }, "ErrorContext": { + "description": "A description of the context in which an error occurred.\nThis data should be provided by the application when reporting an error,\nunless the\nerror report has been generated automatically from Google App Engine logs.", "type": "object", "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" - }, "sourceReferences": { "description": "Source code that was used to build the executable which has\ncaused the given error message.", "items": { @@ -505,16 +506,19 @@ "type": "array" }, "reportLocation": { - "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.", - "$ref": "SourceLocation" + "$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." }, "httpRequest": { - "$ref": "HttpRequestContext", - "description": "The HTTP request which was processed when the error was\ntriggered." + "description": "The HTTP request which was processed when the error was\ntriggered.", + "$ref": "HttpRequestContext" + }, + "user": { + "description": "The user who caused or was affected by the crash.\nThis can be a user ID, an email address, or an arbitrary token that\nuniquely identifies the user.\nWhen sending an error report, leave this field empty if the user was not\nlogged in. In this case the\nError Reporting system will use other data, such as remote IP address, to\ndistinguish affected users. See `affected_users_count` in\n`ErrorGroupStats`.", + "type": "string" } }, - "id": "ErrorContext", - "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." + "id": "ErrorContext" }, "TrackingIssue": { "description": "Information related to tracking the progress on resolving the error.", @@ -528,16 +532,10 @@ "id": "TrackingIssue" }, "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", "properties": { - "timedCounts": { - "items": { - "$ref": "TimedCount" - }, - "type": "array", - "description": "Approximate number of occurrences over time.\nTimed counts returned by ListGroups are guaranteed to be:\n\n- Inside the requested time interval\n- Non-overlapping, and\n- Ordered by ascending time." - }, "group": { "$ref": "ErrorGroup", "description": "Group data that is independent of the filter criteria." @@ -575,11 +573,17 @@ "type": "integer" }, "representative": { - "description": "An arbitrary event that is chosen as representative for the whole group.\nThe representative event is intended to be used as a quick preview for\nthe whole group. Events in the group are usually sufficiently similar\nto each other such that showing an arbitrary representative provides\ninsight into the characteristics of the group as a whole.", - "$ref": "ErrorEvent" + "$ref": "ErrorEvent", + "description": "An arbitrary event that is chosen as representative for the whole group.\nThe representative event is intended to be used as a quick preview for\nthe whole group. Events in the group are usually sufficiently similar\nto each other such that showing an arbitrary representative provides\ninsight into the characteristics of the group as a whole." + }, + "timedCounts": { + "description": "Approximate number of occurrences over time.\nTimed counts returned by ListGroups are guaranteed to be:\n\n- Inside the requested time interval\n- Non-overlapping, and\n- Ordered by ascending time.", + "items": { + "$ref": "TimedCount" + }, + "type": "array" } - }, - "id": "ErrorGroupStats" + } }, "ListEventsResponse": { "description": "Contains a set of requested error events.", @@ -598,14 +602,13 @@ "type": "array" }, "nextPageToken": { - "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." + "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": "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": { @@ -614,9 +617,9 @@ "type": "string" }, "startTime": { - "type": "string", "format": "google-datetime", - "description": "Start of the time period to which `count` refers (included)." + "description": "Start of the time period to which `count` refers (included).", + "type": "string" }, "count": { "format": "int64", @@ -624,13 +627,17 @@ "type": "string" } }, - "id": "TimedCount" + "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." }, "ErrorGroup": { - "id": "ErrorGroup", "description": "Description of a group of similar error events.", "type": "object", "properties": { + "name": { + "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", + "type": "string" + }, "trackingIssues": { "description": "Associated tracking issues.", "items": { @@ -641,20 +648,37 @@ "groupId": { "description": "Group IDs are unique for a given project. If the same kind of error\noccurs in different service contexts, it will receive the same group ID.", "type": "string" + } + }, + "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" }, - "name": { - "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", + "filePath": { + "description": "The source code filename, which can include a truncated relative\npath, or a full path from a production machine.", "type": "string" + }, + "lineNumber": { + "format": "int32", + "description": "1-based. 0 indicates that the line number is unknown.", + "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", "properties": { "service": { - "description": "An identifier of the service, such as the name of the\nexecutable, job, or Google App Engine service name. This field is expected\nto have a low number of values that are relatively stable over time, as\nopposed to `version`, which can be changed whenever new code is deployed.\n\nContains the service name for error reports extracted from Google\nApp Engine logs or `default` if the App Engine default service is used.", - "type": "string" + "type": "string", + "description": "An identifier of the service, such as the name of the\nexecutable, job, or Google App Engine service name. This field is expected\nto have a low number of values that are relatively stable over time, as\nopposed to `version`, which can be changed whenever new code is deployed.\n\nContains the service name for error reports extracted from Google\nApp Engine logs or `default` if the App Engine default service is used." }, "resourceType": { "description": "Type of the MonitoredResource. List of possible values:\nhttps://cloud.google.com/monitoring/api/resources\n\nValue is set automatically for incoming errors and must not be set when\nreporting errors.", @@ -667,50 +691,14 @@ }, "id": "ServiceContext" }, - "SourceLocation": { - "type": "object", - "properties": { - "functionName": { - "type": "string", - "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." - }, - "filePath": { - "description": "The source code filename, which can include a truncated relative\npath, or a full path from a production machine.", - "type": "string" - }, - "lineNumber": { - "format": "int32", - "description": "1-based. 0 indicates that the line number is unknown.", - "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", "properties": {}, - "id": "ReportErrorEventResponse" + "id": "ReportErrorEventResponse", + "description": "Response for reporting an individual error event.\nData may be added to this message in the future." }, "HttpRequestContext": { - "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", "properties": { - "url": { - "description": "The URL of the request.", - "type": "string" - }, - "responseStatusCode": { - "format": "int32", - "description": "The HTTP response status code for the request.", - "type": "integer" - }, - "method": { - "description": "The type of HTTP request, such as `GET`, `POST`, etc.", - "type": "string" - }, "remoteIp": { "description": "The IP address from which the request originated.\nThis can be IPv4, IPv6, or a token which is derived from the\nIP address, depending on the data that has been provided\nin the error report.", "type": "string" @@ -722,15 +710,31 @@ "userAgent": { "description": "The user agent information that is provided with the request.", "type": "string" + }, + "url": { + "type": "string", + "description": "The URL of the request." + }, + "responseStatusCode": { + "format": "int32", + "description": "The HTTP response status code for the request.", + "type": "integer" + }, + "method": { + "description": "The type of HTTP request, such as `GET`, `POST`, etc.", + "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" } }, - "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": "Clouderrorreporting", "auth": { "oauth2": { @@ -742,9 +746,5 @@ } }, "rootUrl": "https://clouderrorreporting.googleapis.com/", - "ownerDomain": "google.com", - "name": "clouderrorreporting", - "batchPath": "batch", - "title": "Stackdriver Error Reporting API", - "ownerName": "Google" + "ownerDomain": "google.com" } diff --git a/DiscoveryJson/cloudfunctions_v1.json b/DiscoveryJson/cloudfunctions_v1.json index 13d7790633..9aad04ca3c 100644 --- a/DiscoveryJson/cloudfunctions_v1.json +++ b/DiscoveryJson/cloudfunctions_v1.json @@ -1,23 +1,42 @@ { - "ownerName": "Google", - "discoveryVersion": "v1", "version_module": "True", "resources": {}, "parameters": { - "oauth_token": { + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + }, + "key": { "location": "query", - "description": "OAuth 2.0 token for the current user.", + "description": "API key. 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" }, - "bearer_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.", + "default": "true", + "type": "boolean" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", "type": "string", + "location": "query" + }, + "bearer_token": { "location": "query", - "description": "OAuth bearer token." + "description": "OAuth bearer token.", + "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "prettyPrint": { "description": "Returns response with indentations and line breaks.", @@ -31,14 +50,14 @@ "type": "string" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "$.xgafv": { "enumDescriptions": [ @@ -54,41 +73,20 @@ "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": { + "enumDescriptions": [ + "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": "Available 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.", - "default": "true", - "type": "boolean", - "location": "query" + "description": "Data format for response.", + "default": "json" } }, "schemas": { @@ -96,19 +94,21 @@ "description": "Metadata describing an Operation", "type": "object", "properties": { - "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" - }, - "description": "The original request that started the operation.", - "type": "object" + } }, "type": { + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], "enum": [ "OPERATION_UNSPECIFIED", "CREATE_FUNCTION", @@ -116,23 +116,21 @@ "DELETE_FUNCTION" ], "description": "Type of operation.", - "type": "string", - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ] + "type": "string" + }, + "target": { + "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1", + "type": "string" } }, "id": "OperationMetadataV1Beta2" } }, - "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": "v1", "baseUrl": "https://cloudfunctions.googleapis.com/", "canonicalName": "Cloud Functions", @@ -144,8 +142,10 @@ "ownerDomain": "google.com", "name": "cloudfunctions", "batchPath": "batch", - "documentationLink": "https://cloud.google.com/functions", "id": "cloudfunctions:v1", + "documentationLink": "https://cloud.google.com/functions", "revision": "20170714", - "title": "Google Cloud Functions API" + "title": "Google Cloud Functions API", + "ownerName": "Google", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/cloudfunctions_v1beta2.json b/DiscoveryJson/cloudfunctions_v1beta2.json index d56ae336ae..bf5d4d47ef 100644 --- a/DiscoveryJson/cloudfunctions_v1beta2.json +++ b/DiscoveryJson/cloudfunctions_v1beta2.json @@ -1,74 +1,28 @@ { - "discoveryVersion": "v1", "version_module": "True", "schemas": { - "Location": { - "description": "A resource that represents Google Cloud Platform location.", + "CallFunctionResponse": { + "description": "Response of `CallFunction` method.", "type": "object", "properties": { - "name": { - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`", + "executionId": { + "description": "Execution id of function invocation.", "type": "string" }, - "locationId": { - "type": "string", - "description": "The canonical id for this location. For example: `\"us-east1\"`." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", - "type": "object" - }, - "labels": { - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - }, - "id": "Location" - }, - "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.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", + "error": { + "description": "Either system or user-function generated error. Set if execution\nwas not successful.", "type": "string" - } - }, - "id": "ListOperationsResponse" - }, - "ListFunctionsResponse": { - "description": "Response for the `ListFunctions` method.", - "type": "object", - "properties": { - "functions": { - "description": "The functions that match the request.", - "items": { - "$ref": "CloudFunction" - }, - "type": "array" }, - "nextPageToken": { - "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1beta2.ListFunctionsRequest\nto get more functions.", + "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" } }, - "id": "ListFunctionsResponse" + "id": "CallFunctionResponse" }, "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "type": "object", "properties": { "locations": { "description": "A list of locations that matches the specified filter in the request.", @@ -82,28 +36,7 @@ "type": "string" } }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" - }, - "CallFunctionResponse": { - "description": "Response of `CallFunction` method.", - "type": "object", - "properties": { - "error": { - "description": "Either system or user-function generated error. Set if execution\nwas not successful.", - "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" - }, - "executionId": { - "description": "Execution id of function invocation.", - "type": "string" - } - }, - "id": "CallFunctionResponse" + "id": "ListLocationsResponse" }, "EventTrigger": { "description": "Describes EventTrigger, used to request events be sent from another\nservice.", @@ -125,8 +58,8 @@ "type": "object", "properties": { "url": { - "type": "string", - "description": "Output only. The deployed url for the function." + "description": "Output only. The deployed url for the function.", + "type": "string" } }, "id": "HTTPSTrigger" @@ -135,51 +68,53 @@ "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" - } + }, + "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": { - "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" + }, + "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" }, "OperationMetadataV1Beta2": { + "id": "OperationMetadataV1Beta2", + "description": "Metadata describing an Operation", "type": "object", "properties": { "target": { - "type": "string", - "description": "Target of the operation - for example\nprojects/project-1/locations/region-1/functions/function-1" + "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" - }, - "description": "The original request that started the operation.", - "type": "object" + } }, "type": { "enumDescriptions": [ @@ -197,14 +132,22 @@ "description": "Type of operation.", "type": "string" } - }, - "id": "OperationMetadataV1Beta2", - "description": "Metadata describing an Operation" + } }, "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": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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.", "items": { @@ -215,48 +158,32 @@ "type": "object" }, "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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" + } }, "CallFunctionRequest": { + "id": "CallFunctionRequest", + "description": "Request for the `CallFunction` method.", "type": "object", "properties": { "data": { - "type": "string", - "description": "Input to be passed to the function." + "description": "Input to be passed to the function.", + "type": "string" } - }, - "id": "CallFunctionRequest", - "description": "Request for the `CallFunction` method." + } }, "SourceRepository": { + "id": "SourceRepository", + "description": "Describes the location of the function source in a remote repository.", "type": "object", "properties": { - "revision": { - "description": "The id of the revision that captures the state of the repository from\nwhich the function should be fetched.", - "type": "string" - }, - "repositoryUrl": { - "description": "URL to the hosted repository where the function is defined. Only paths in\nhttps://source.developers.google.com domain are supported. The path should\ncontain the name of the repository.", - "type": "string" - }, "tag": { "description": "The name of the tag that captures the state of the repository from\nwhich the function should be fetched.", "type": "string" }, "branch": { - "type": "string", - "description": "The name of the branch from which the function should be fetched." + "description": "The name of the branch from which the function should be fetched.", + "type": "string" }, "deployedRevision": { "description": "Output only. The id of the revision that was resolved at the moment of\nfunction creation or update. For example when a user deployed from a\nbranch, it will be the revision id of the latest change on this branch at\nthat time. If user deployed from revision then this value will be always\nequal to the revision specified by the user.", @@ -265,19 +192,33 @@ "sourcePath": { "description": "The path within the repository where the function is defined. The path\nshould point to the directory where Cloud Functions files are located. Use\n\"/\" if the function is defined directly in the root directory of a\nrepository.", "type": "string" + }, + "revision": { + "description": "The id of the revision that captures the state of the repository from\nwhich the function should be fetched.", + "type": "string" + }, + "repositoryUrl": { + "description": "URL to the hosted repository where the function is defined. Only paths in\nhttps://source.developers.google.com domain are supported. The path should\ncontain the name of the repository.", + "type": "string" } - }, - "id": "SourceRepository", - "description": "Describes the location of the function source in a remote repository." + } }, "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", "properties": { - "eventTrigger": { - "$ref": "EventTrigger", - "description": "A source that fires events in response to a condition in another service." + "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": { + "format": "google-duration", + "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.", + "type": "string" }, "status": { "enumDescriptions": [ @@ -297,10 +238,9 @@ "description": "Output only. Status of the function deployment.", "type": "string" }, - "timeout": { - "type": "string", - "format": "google-duration", - "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." + "eventTrigger": { + "$ref": "EventTrigger", + "description": "A source that fires events in response to a condition in another service." }, "availableMemoryMb": { "format": "int32", @@ -308,8 +248,8 @@ "type": "integer" }, "name": { - "type": "string", - "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`" + "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", + "type": "string" }, "serviceAccount": { "description": "Output only. The service account of the function.", @@ -335,23 +275,82 @@ "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/*/aliases/movable/*/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/*/aliases/fixed/*/paths/*`\n\nYou may omit `paths/*` if you want to use the main directory.", "type": "string" + } + }, + "id": "CloudFunction" + }, + "Location": { + "id": "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" }, - "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.", + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", "type": "string" }, - "httpsTrigger": { - "$ref": "HTTPSTrigger", - "description": "An HTTPS endpoint type of source that can be triggered via URL." + "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\"}", + "type": "object" + } + } + }, + "ListOperationsResponse": { + "id": "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.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + } + }, + "ListFunctionsResponse": { + "id": "ListFunctionsResponse", + "description": "Response for the `ListFunctions` method.", + "type": "object", + "properties": { + "functions": { + "description": "The functions that match the request.", + "items": { + "$ref": "CloudFunction" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If not empty, indicates that there may be more functions that match\nthe request; this value should be passed in a new\ngoogle.cloud.functions.v1beta2.ListFunctionsRequest\nto get more functions.", + "type": "string" } } } }, - "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": "Cloud Functions", "auth": { "oauth2": { @@ -369,168 +368,280 @@ "title": "Google Cloud Functions API", "ownerName": "Google", "resources": { - "projects": { - "resources": { - "locations": { - "resources": { - "functions": { - "methods": { - "list": { - "path": "v1beta2/{+location}/functions", - "id": "cloudfunctions.projects.locations.functions.list", - "description": "Returns a list of functions that belong to the requested project.", - "httpMethod": "GET", - "parameterOrder": [ - "location" - ], - "response": { - "$ref": "ListFunctionsResponse" - }, - "parameters": { - "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.", - "type": "string", - "required": true - }, - "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": { - "format": "int32", - "description": "Maximum number of functions to return per call.", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions" + "operations": { + "methods": { + "get": { + "parameters": { + "name": { + "pattern": "^operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ] + }, + "list": { + "id": "cloudfunctions.operations.list", + "path": "v1beta2/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.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/operations" + } + } + }, + "projects": { + "resources": { + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" }, - "call": { - "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", - "request": { - "$ref": "CallFunctionRequest" - }, - "response": { - "$ref": "CallFunctionResponse" - }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The resource that owns the locations collection, if applicable.", + "type": "string", + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/projects/{projectsId}/locations", + "id": "cloudfunctions.projects.locations.list", + "path": "v1beta2/{+name}/locations" + } + }, + "resources": { + "functions": { + "methods": { + "get": { + "description": "Returns a function with the given name from the requested project.", + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "response": { + "$ref": "CloudFunction" + }, "parameters": { "name": { + "description": "The name of the function which details should be obtained.", "type": "string", "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function to be called." + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", - "id": "cloudfunctions.projects.locations.functions.call", - "path": "v1beta2/{+name}:call" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1beta2/{+name}", + "id": "cloudfunctions.projects.locations.functions.get" }, - "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.", + "update": { + "id": "cloudfunctions.projects.locations.functions.update", + "path": "v1beta2/{+name}", "request": { "$ref": "CloudFunction" }, + "description": "Updates existing function.", "response": { "$ref": "Operation" }, "parameterOrder": [ - "location" + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "POST", "parameters": { - "location": { - "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", - "id": "cloudfunctions.projects.locations.functions.create", - "path": "v1beta2/{+location}/functions" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}" }, - "get": { - "response": { - "$ref": "CloudFunction" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", + "delete": { "parameters": { "name": { - "type": "string", - "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", "location": "path", - "description": "The name of the function which details should be obtained." + "description": "The name of the function which should be deleted.", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.get", + "id": "cloudfunctions.projects.locations.functions.delete", "path": "v1beta2/{+name}", - "description": "Returns a function with the given name from the requested project." - }, - "update": { - "description": "Updates existing function.", - "request": { - "$ref": "CloudFunction" - }, + "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" }, + "httpMethod": "DELETE", "parameterOrder": [ "name" + ] + }, + "list": { + "id": "cloudfunctions.projects.locations.functions.list", + "path": "v1beta2/{+location}/functions", + "description": "Returns a list of functions that belong to the requested project.", + "response": { + "$ref": "ListFunctionsResponse" + }, + "parameterOrder": [ + "location" ], - "httpMethod": "PUT", + "httpMethod": "GET", "parameters": { - "name": { - "description": "The name of the function to be updated.", + "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.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path" + "required": true + }, + "pageToken": { + "description": "The value returned by the last\n`ListFunctionsResponse`; indicates that\nthis is a continuation of a prior `ListFunctions` call, and that the\nsystem should return the next page of data.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum number of functions to return per call.", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.update", - "path": "v1beta2/{+name}" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions" }, - "delete": { - "httpMethod": "DELETE", + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "location" + ], "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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/*`", + "type": "string", + "required": true + } + }, + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", + "path": "v1beta2/{+location}/functions", + "id": "cloudfunctions.projects.locations.functions.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." + }, + "call": { + "path": "v1beta2/{+name}:call", + "id": "cloudfunctions.projects.locations.functions.call", + "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", + "request": { + "$ref": "CallFunctionRequest" + }, + "httpMethod": "POST", "parameterOrder": [ "name" ], + "response": { + "$ref": "CallFunctionResponse" + }, "parameters": { "name": { - "description": "The name of the function which should be deleted.", + "description": "The name of the function to be called.", "type": "string", "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", @@ -540,149 +651,16 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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." + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call" } } } - }, - "methods": { - "list": { - "description": "Lists information about the supported locations for this service.", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "description": "The resource that owns the locations collection, if applicable.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/locations", - "id": "cloudfunctions.projects.locations.list", - "path": "v1beta2/{+name}/locations" - } } } } - }, - "operations": { - "methods": { - "get": { - "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.", - "httpMethod": "GET", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/operations/{operationsId}" - }, - "list": { - "flatPath": "v1beta2/operations", - "id": "cloudfunctions.operations.list", - "path": "v1beta2/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.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "name": { - "location": "query", - "description": "The name of the operation's parent resource.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } } }, "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.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", @@ -700,9 +678,9 @@ "location": "query" }, "fields": { - "type": "string", "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, "callback": { "description": "JSONP", @@ -739,23 +717,45 @@ "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" + }, + "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.", + "default": "true", + "type": "boolean", + "location": "query" + }, + "bearer_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 bearer token.", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" } }, "version": "v1beta2", "baseUrl": "https://cloudfunctions.googleapis.com/", + "servicePath": "", "description": "API for managing lightweight user-provided functions executed in response to events.", "kind": "discovery#restDescription", - "servicePath": "", "basePath": "", "documentationLink": "https://cloud.google.com/functions", "revision": "20170714", - "id": "cloudfunctions:v1beta2" + "id": "cloudfunctions:v1beta2", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/cloudkms_v1.json b/DiscoveryJson/cloudkms_v1.json index ec9e0e9352..e8e046ad50 100644 --- a/DiscoveryJson/cloudkms_v1.json +++ b/DiscoveryJson/cloudkms_v1.json @@ -1,27 +1,152 @@ { - "baseUrl": "https://cloudkms.googleapis.com/", - "servicePath": "", - "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.", - "basePath": "", - "id": "cloudkms:v1", - "revision": "20170621", - "documentationLink": "https://cloud.google.com/kms/", "discoveryVersion": "v1", "version_module": "True", "schemas": { + "DestroyCryptoKeyVersionRequest": { + "description": "Request message for KeyManagementService.DestroyCryptoKeyVersion.", + "type": "object", + "properties": {}, + "id": "DestroyCryptoKeyVersionRequest" + }, + "CryptoKey": { + "description": "A CryptoKey represents a logical key that can be used for cryptographic\noperations.\n\nA CryptoKey is made up of one or more versions, which\nrepresent the actual key material used in cryptographic operations.", + "type": "object", + "properties": { + "createTime": { + "format": "google-datetime", + "description": "Output only. The time at which this CryptoKey was created.", + "type": "string" + }, + "rotationPeriod": { + "format": "google-duration", + "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.", + "type": "string" + }, + "primary": { + "$ref": "CryptoKeyVersion", + "description": "Output only. A copy of the \"primary\" CryptoKeyVersion that will be used\nby Encrypt when this CryptoKey is given\nin EncryptRequest.name.\n\nThe CryptoKey's primary version can be updated via\nUpdateCryptoKeyPrimaryVersion." + }, + "name": { + "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "type": "string" + }, + "purpose": { + "description": "The immutable purpose of this CryptoKey. Currently, the only acceptable\npurpose is ENCRYPT_DECRYPT.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "CryptoKeys with this purpose may be used with\nEncrypt and\nDecrypt." + ], + "enum": [ + "CRYPTO_KEY_PURPOSE_UNSPECIFIED", + "ENCRYPT_DECRYPT" + ] + }, + "nextRotationTime": { + "format": "google-datetime", + "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.", + "type": "string" + } + }, + "id": "CryptoKey" + }, + "Rule": { + "description": "A rule to be applied in a Policy.", + "type": "object", + "properties": { + "logConfig": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "in": { + "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "action": { + "description": "Required", + "type": "string", + "enumDescriptions": [ + "Default no action.", + "Matching 'Entries' grant access.", + "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' deny access.", + "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' tell IAM.Check callers to generate logs." + ], + "enum": [ + "NO_ACTION", + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG" + ] + }, + "notIn": { + "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" + }, + "type": "array" + } + }, + "id": "Rule" + }, + "LogConfig": { + "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1", + "type": "object", + "properties": { + "dataAccess": { + "description": "Data access options.", + "$ref": "DataAccessOptions" + }, + "cloudAudit": { + "$ref": "CloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "description": "Counter options.", + "$ref": "CounterOptions" + } + }, + "id": "LogConfig" + }, "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": { "format": "google-fieldmask", "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.", "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" @@ -100,6 +225,28 @@ "description": "A condition to be met.", "type": "object", "properties": { + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "sys": { + "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", + "type": "string", + "enumDescriptions": [ + "Default non-attribute type", + "Region of the resource", + "Service name", + "Resource name", + "IP address of the caller" + ], + "enum": [ + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" + ] + }, "values": { "description": "The objects of the condition. This is mutually exclusive with 'value'.", "items": { @@ -126,8 +273,6 @@ ] }, "op": { - "description": "An operator to apply the subject with.", - "type": "string", "enumDescriptions": [ "Default no-op.", "DEPRECATED. Use IN instead.", @@ -143,32 +288,12 @@ "IN", "NOT_IN", "DISCHARGED" - ] - }, - "svc": { - "description": "Trusted attributes discharged by the service.", - "type": "string" - }, - "sys": { - "enumDescriptions": [ - "Default non-attribute type", - "Region of the resource", - "Service name", - "Resource name", - "IP address of the caller" - ], - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" ], - "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", + "description": "An operator to apply the subject with.", "type": "string" }, - "value": { - "description": "DEPRECATED. Use 'values' instead.", + "svc": { + "description": "Trusted attributes discharged by the service.", "type": "string" } }, @@ -193,16 +318,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.", - "items": { - "type": "string" - }, - "type": "array" - }, "logType": { - "description": "The log type that this config enables.", - "type": "string", "enumDescriptions": [ "Default case. Should never be this.", "Admin reads. Example: CloudIAM getIamPolicy", @@ -214,7 +330,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.", + "items": { + "type": "string" + }, + "type": "array" } }, "id": "AuditLogConfig" @@ -249,58 +374,17 @@ "description": "Response message for KeyManagementService.Encrypt.", "type": "object", "properties": { - "ciphertext": { - "format": "byte", - "description": "The encrypted data.", - "type": "string" - }, "name": { "description": "The resource name of the CryptoKeyVersion used in encryption.", "type": "string" - } - }, - "id": "EncryptResponse" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "iamOwned": { - "type": "boolean" - }, - "rules": { - "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - }, - "type": "array" - }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - }, - "type": "array" }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - }, - "type": "array" - }, - "etag": { + "ciphertext": { "format": "byte", - "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.", + "description": "The encrypted data.", "type": "string" } }, - "id": "Policy" + "id": "EncryptResponse" }, "KeyRing": { "description": "A KeyRing is a toplevel logical grouping of CryptoKeys.", @@ -336,11 +420,46 @@ }, "id": "ListLocationsResponse" }, - "RestoreCryptoKeyVersionRequest": { - "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", - "type": "object", - "properties": {}, - "id": "RestoreCryptoKeyVersionRequest" + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", + "type": "object", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "iamOwned": { + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + } + }, + "id": "Policy" }, "UpdateCryptoKeyPrimaryVersionRequest": { "description": "Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.", @@ -353,6 +472,18 @@ }, "id": "UpdateCryptoKeyPrimaryVersionRequest" }, + "RestoreCryptoKeyVersionRequest": { + "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", + "type": "object", + "properties": {}, + "id": "RestoreCryptoKeyVersionRequest" + }, + "DataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "type": "object", + "properties": {}, + "id": "DataAccessOptions" + }, "ListKeyRingsResponse": { "description": "Response message for KeyManagementService.ListKeyRings.", "type": "object", @@ -376,20 +507,10 @@ }, "id": "ListKeyRingsResponse" }, - "DataAccessOptions": { - "description": "Write a Data Access (Gin) log", - "type": "object", - "properties": {}, - "id": "DataAccessOptions" - }, "AuditConfig": { "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", "type": "object", "properties": { - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - }, "auditLogConfigs": { "description": "The configuration for logging of each type of permission.\nNext ID: 4", "items": { @@ -402,6 +523,10 @@ "type": "string" }, "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" } }, "id": "AuditConfig" @@ -475,6 +600,10 @@ "description": "Associates `members` with a `role`.", "type": "object", "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." + }, "members": { "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { @@ -485,10 +614,6 @@ "role": { "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" - }, - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." } }, "id": "Binding" @@ -497,14 +622,6 @@ "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", "type": "object", "properties": { - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", - "type": "string" - }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" - }, "location": { "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", "type": "string" @@ -512,6 +629,14 @@ "title": { "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", "type": "string" + }, + "description": { + "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", + "type": "string" } }, "id": "Expr" @@ -520,14 +645,14 @@ "description": "Request message for KeyManagementService.Encrypt.", "type": "object", "properties": { - "additionalAuthenticatedData": { + "plaintext": { "format": "byte", - "description": "Optional data that, if specified, must also be provided during decryption\nthrough DecryptRequest.additional_authenticated_data. Must be no\nlarger than 64KiB.", + "description": "Required. The data to encrypt. Must be no larger than 64KiB.", "type": "string" }, - "plaintext": { + "additionalAuthenticatedData": { "format": "byte", - "description": "Required. The data to encrypt. Must be no larger than 64KiB.", + "description": "Optional data that, if specified, must also be provided during decryption\nthrough DecryptRequest.additional_authenticated_data. Must be no\nlarger than 64KiB.", "type": "string" } }, @@ -569,146 +694,13 @@ } }, "id": "TestIamPermissionsResponse" - }, - "DestroyCryptoKeyVersionRequest": { - "description": "Request message for KeyManagementService.DestroyCryptoKeyVersion.", - "type": "object", - "properties": {}, - "id": "DestroyCryptoKeyVersionRequest" - }, - "Rule": { - "description": "A rule to be applied in a Policy.", - "type": "object", - "properties": { - "logConfig": { - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", - "items": { - "$ref": "LogConfig" - }, - "type": "array" - }, - "in": { - "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - }, - "type": "array" - }, - "permissions": { - "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - }, - "type": "array" - }, - "action": { - "enumDescriptions": [ - "Default no action.", - "Matching 'Entries' grant access.", - "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' deny access.", - "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' tell IAM.Check callers to generate logs." - ], - "enum": [ - "NO_ACTION", - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG" - ], - "description": "Required", - "type": "string" - }, - "notIn": { - "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", - "items": { - "type": "string" - }, - "type": "array" - }, - "description": { - "description": "Human-readable description of the rule.", - "type": "string" - }, - "conditions": { - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - }, - "type": "array" - } - }, - "id": "Rule" - }, - "CryptoKey": { - "description": "A CryptoKey represents a logical key that can be used for cryptographic\noperations.\n\nA CryptoKey is made up of one or more versions, which\nrepresent the actual key material used in cryptographic operations.", - "type": "object", - "properties": { - "createTime": { - "format": "google-datetime", - "description": "Output only. The time at which this CryptoKey was created.", - "type": "string" - }, - "rotationPeriod": { - "format": "google-duration", - "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.", - "type": "string" - }, - "primary": { - "description": "Output only. A copy of the \"primary\" CryptoKeyVersion that will be used\nby Encrypt when this CryptoKey is given\nin EncryptRequest.name.\n\nThe CryptoKey's primary version can be updated via\nUpdateCryptoKeyPrimaryVersion.", - "$ref": "CryptoKeyVersion" - }, - "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" - ] - }, - "nextRotationTime": { - "format": "google-datetime", - "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.", - "type": "string" - } - }, - "id": "CryptoKey" - }, - "LogConfig": { - "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1", - "type": "object", - "properties": { - "dataAccess": { - "$ref": "DataAccessOptions", - "description": "Data access options." - }, - "cloudAudit": { - "description": "Cloud audit options.", - "$ref": "CloudAuditOptions" - }, - "counter": { - "$ref": "CounterOptions", - "description": "Counter options." - } - }, - "id": "LogConfig" } }, - "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 KMS", "auth": { "oauth2": { @@ -732,16 +724,16 @@ "methods": { "get": { "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "id": "cloudkms.projects.locations.get", "path": "v1/{+name}", + "id": "cloudkms.projects.locations.get", "description": "Get information about a location.", + "httpMethod": "GET", "response": { "$ref": "Location" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -769,21 +761,21 @@ ], "parameters": { "filter": { - "location": "query", "description": "The standard list filter.", - "type": "string" + "type": "string", + "location": "query" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "name": { - "location": "path", "description": "The resource that owns the locations collection, if applicable.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" }, "pageSize": { "format": "int32", @@ -800,99 +792,111 @@ "resources": { "keyRings": { "methods": { - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy", - "id": "cloudkms.projects.locations.keyRings.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.", + "testIamPermissions": { "response": { - "$ref": "Policy" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ "resource" ], - "httpMethod": "GET", + "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.", + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "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}:testIamPermissions", + "id": "cloudkms.projects.locations.keyRings.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning." }, - "get": { + "list": { + "description": "Lists KeyRings.", "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { - "$ref": "KeyRing" + "$ref": "ListKeyRingsResponse" }, + "parameterOrder": [ + "parent" + ], "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { - "description": "The name of the KeyRing to get.", + "pageToken": { + "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "Optional limit on the number of KeyRings to include in the\nresponse. Further KeyRings can subsequently be obtained by\nincluding the ListKeyRingsResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.get", - "description": "Returns metadata for a given KeyRing." + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", + "path": "v1/{+parent}/keyRings", + "id": "cloudkms.projects.locations.keyRings.list" }, - "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.", + "setIamPolicy": { "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "SetIamPolicyRequest" }, + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "httpMethod": "POST", "parameterOrder": [ "resource" ], "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Policy" }, + "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.", + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "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}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "cloudkms.projects.locations.keyRings.testIamPermissions" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "cloudkms.projects.locations.keyRings.setIamPolicy" }, - "list": { - "httpMethod": "GET", + "create": { + "description": "Create a new KeyRing in a given Project and Location.", + "request": { + "$ref": "KeyRing" + }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], "response": { - "$ref": "ListKeyRingsResponse" + "$ref": "KeyRing" }, "parameters": { - "pageSize": { - "format": "int32", - "description": "Optional limit on the number of KeyRings to include in the\nresponse. Further KeyRings can subsequently be obtained by\nincluding the ListKeyRingsResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.", - "type": "integer", - "location": "query" - }, "parent": { "location": "path", "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", @@ -900,10 +904,10 @@ "required": true, "pattern": "^projects/[^/]+/locations/[^/]+$" }, - "pageToken": { - "location": "query", - "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.", - "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": [ @@ -911,86 +915,132 @@ ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", "path": "v1/{+parent}/keyRings", - "id": "cloudkms.projects.locations.keyRings.list", - "description": "Lists KeyRings." + "id": "cloudkms.projects.locations.keyRings.create" }, - "create": { - "request": { - "$ref": "KeyRing" - }, - "description": "Create a new KeyRing in a given Project and Location.", + "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": "KeyRing" + "$ref": "Policy" }, "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "resource" ], + "httpMethod": "GET", "parameters": { - "parent": { - "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", "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", - "id": "cloudkms.projects.locations.keyRings.create", - "path": "v1/{+parent}/keyRings" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy", + "id": "cloudkms.projects.locations.keyRings.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy" }, - "setIamPolicy": { + "get": { + "description": "Returns metadata for a given KeyRing.", "response": { - "$ref": "Policy" + "$ref": "KeyRing" }, "parameterOrder": [ - "resource" + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "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.", + "name": { + "location": "path", + "description": "The name of the KeyRing to get.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy", - "id": "cloudkms.projects.locations.keyRings.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}", + "id": "cloudkms.projects.locations.keyRings.get", + "path": "v1/{+name}" } }, "resources": { "cryptoKeys": { "methods": { - "list": { - "httpMethod": "GET", + "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": [ - "parent" + "resource" ], "response": { - "$ref": "ListCryptoKeysResponse" + "$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.", + "type": "string", + "required": true, + "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}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions" + }, + "decrypt": { + "description": "Decrypts data that was protected by Encrypt.", + "request": { + "$ref": "DecryptRequest" + }, + "response": { + "$ref": "DecryptResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "location": "path", + "description": "Required. The resource name of the CryptoKey to use for decryption.\nThe server will choose the appropriate version.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" + } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt", + "path": "v1/{+name}:decrypt" + }, + "list": { + "response": { + "$ref": "ListCryptoKeysResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", "parameters": { + "pageToken": { + "location": "query", + "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.", + "type": "string" + }, "pageSize": { "location": "query", "format": "int32", @@ -998,21 +1048,19 @@ "type": "integer" }, "parent": { + "location": "path", "description": "Required. The resource name of the KeyRing to list, in the format\n`projects/*/locations/*/keyRings/*`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.", - "type": "string" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" } }, + "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.list", + "path": "v1/{+parent}/cryptoKeys", "description": "Lists CryptoKeys." }, "encrypt": { @@ -1029,11 +1077,11 @@ }, "parameters": { "name": { - "location": "path", "description": "Required. The resource name of the CryptoKey or CryptoKeyVersion\nto use for encryption.\n\nIf a CryptoKey is specified, the server will use its\nprimary version.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/.+$" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/.+$", + "location": "path" } }, "scopes": [ @@ -1044,10 +1092,10 @@ "id": "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt" }, "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" }, @@ -1055,40 +1103,34 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { + "location": "path", "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" } }, - "scopes": [ - "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" }, "create": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.create", - "path": "v1/{+parent}/cryptoKeys", - "request": { - "$ref": "CryptoKey" - }, "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.", - "response": { + "request": { "$ref": "CryptoKey" }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "CryptoKey" + }, "parameters": { "parent": { "location": "path", @@ -1098,11 +1140,17 @@ "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" }, "cryptoKeyId": { + "location": "query", "description": "Required. It must be unique within a KeyRing and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", - "type": "string", - "location": "query" + "type": "string" } - } + }, + "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" }, "updatePrimaryVersion": { "request": { @@ -1133,9 +1181,6 @@ "path": "v1/{+name}:updatePrimaryVersion" }, "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:getIamPolicy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.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.", "response": { "$ref": "Policy" @@ -1155,240 +1200,190 @@ "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" } - } - }, - "patch": { - "request": { - "$ref": "CryptoKey" - }, - "description": "Update a CryptoKey.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "CryptoKey" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Required list of fields to be updated in this request.", - "type": "string" - }, - "name": { - "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch" - }, - "get": { - "description": "Returns metadata for a given CryptoKey, as well as its\nprimary CryptoKeyVersion.", - "response": { - "$ref": "CryptoKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the CryptoKey to get.", - "type": "string", - "required": true, - "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}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get", - "path": "v1/{+name}" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:getIamPolicy", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy" }, - "testIamPermissions": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:testIamPermissions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "response": { - "$ref": "TestIamPermissionsResponse" + "patch": { + "request": { + "$ref": "CryptoKey" }, + "description": "Update a CryptoKey.", + "httpMethod": "PATCH", "parameterOrder": [ - "resource" + "name" ], - "httpMethod": "POST", + "response": { + "$ref": "CryptoKey" + }, "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.", + "updateMask": { + "format": "google-fieldmask", + "description": "Required list of fields to be updated in this request.", + "type": "string", + "location": "query" + }, + "name": { + "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "type": "string", "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", "location": "path" } - } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", + "path": "v1/{+name}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch" }, - "decrypt": { - "request": { - "$ref": "DecryptRequest" + "get": { + "description": "Returns metadata for a given CryptoKey, as well as its\nprimary CryptoKeyVersion.", + "response": { + "$ref": "CryptoKey" }, - "description": "Decrypts data that was protected by Encrypt.", - "httpMethod": "POST", "parameterOrder": [ "name" ], - "response": { - "$ref": "DecryptResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "GET", "parameters": { "name": { "location": "path", - "description": "Required. The resource name of the CryptoKey to use for decryption.\nThe server will choose the appropriate version.", + "description": "The name of the CryptoKey to get.", "type": "string", "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt", - "path": "v1/{+name}:decrypt", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get", + "path": "v1/{+name}" } }, "resources": { "cryptoKeyVersions": { "methods": { - "list": { - "description": "Lists CryptoKeyVersions.", + "get": { + "description": "Returns metadata for a given CryptoKeyVersion.", "response": { - "$ref": "ListCryptoKeyVersionsResponse" + "$ref": "CryptoKeyVersion" }, "parameterOrder": [ - "parent" + "name" ], "httpMethod": "GET", "parameters": { - "pageToken": { - "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "format": "int32", - "description": "Optional limit on the number of CryptoKeyVersions to\ninclude in the response. Further CryptoKeyVersions can\nsubsequently be obtained by including the\nListCryptoKeyVersionsResponse.next_page_token in a subsequent request.\nIf unspecified, the server will pick an appropriate default.", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required. The resource name of the CryptoKey to list, in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "name": { + "description": "The name of the CryptoKeyVersion to get.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "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", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list", - "path": "v1/{+parent}/cryptoKeyVersions" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get", + "path": "v1/{+name}" }, - "create": { - "response": { + "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.", + "httpMethod": "PATCH", "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", + "response": { + "$ref": "CryptoKeyVersion" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "parent": { - "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.", + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "description": "Required list of fields to be updated in this request.", + "type": "string" + }, + "name": { + "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create", - "path": "v1/{+parent}/cryptoKeyVersions", - "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." + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", + "path": "v1/{+name}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch" }, - "destroy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:destroy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy", - "path": "v1/{+name}:destroy", - "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" - }, + "list": { "response": { - "$ref": "CryptoKeyVersion" + "$ref": "ListCryptoKeyVersionsResponse" }, "parameterOrder": [ - "name" + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "POST", "parameters": { - "name": { - "location": "path", - "description": "The resource name of the CryptoKeyVersion to destroy.", + "pageSize": { + "format": "int32", + "description": "Optional limit on the number of CryptoKeyVersions to\ninclude in the response. Further CryptoKeyVersions can\nsubsequently be obtained by including the\nListCryptoKeyVersionsResponse.next_page_token in a subsequent request.\nIf unspecified, the server will pick an appropriate default.", + "type": "integer", + "location": "query" + }, + "parent": { + "description": "Required. The resource name of the CryptoKey to list, in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.", + "type": "string", + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list", + "path": "v1/{+parent}/cryptoKeyVersions", + "description": "Lists CryptoKeyVersions." }, - "restore": { - "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.", + "create": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", + "path": "v1/{+parent}/cryptoKeyVersions", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.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": "RestoreCryptoKeyVersionRequest" + "$ref": "CryptoKeyVersion" }, "httpMethod": "POST", "parameterOrder": [ - "name" + "parent" ], "response": { "$ref": "CryptoKeyVersion" }, "parameters": { - "name": { - "description": "The resource name of the CryptoKeyVersion to restore.", + "parent": { + "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", "location": "path" } }, @@ -1396,64 +1391,61 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "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.", - "request": { - "$ref": "CryptoKeyVersion" - }, + "destroy": { "response": { "$ref": "CryptoKeyVersion" }, "parameterOrder": [ "name" ], - "httpMethod": "PATCH", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Required list of fields to be updated in this request.", - "type": "string" - }, "name": { - "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", + "description": "The resource name of the CryptoKeyVersion to destroy.", "type": "string", "required": true, "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}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch", - "path": "v1/{+name}" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:destroy", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy", + "path": "v1/{+name}:destroy", + "request": { + "$ref": "DestroyCryptoKeyVersionRequest" + }, + "description": "Schedule a CryptoKeyVersion for destruction.\n\nUpon calling this method, CryptoKeyVersion.state will be set to\nDESTROY_SCHEDULED\nand destroy_time will be set to a time 24\nhours in the future, at which point the state\nwill be changed to\nDESTROYED, and the key\nmaterial will be irrevocably destroyed.\n\nBefore the destroy_time is reached,\nRestoreCryptoKeyVersion may be called to reverse the process." }, - "get": { + "restore": { + "request": { + "$ref": "RestoreCryptoKeyVersionRequest" + }, + "description": "Restore a CryptoKeyVersion in the\nDESTROY_SCHEDULED,\nstate.\n\nUpon restoration of the CryptoKeyVersion, state\nwill be set to DISABLED,\nand destroy_time will be cleared.", "response": { "$ref": "CryptoKeyVersion" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { "location": "path", - "description": "The name of the CryptoKeyVersion to get.", + "description": "The resource name of the CryptoKeyVersion to restore.", "type": "string", "required": true, "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$" } }, - "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." + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore", + "path": "v1/{+name}:restore" } } } @@ -1467,31 +1459,31 @@ } }, "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" }, - "key": { - "description": "API key. 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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "type": "string", + "location": "query" }, "bearer_token": { "description": "OAuth bearer token.", @@ -1509,16 +1501,16 @@ "default": "true", "type": "boolean" }, - "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" }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" + }, "callback": { "location": "query", "description": "JSONP", @@ -1554,5 +1546,13 @@ "type": "string" } }, - "version": "v1" + "version": "v1", + "baseUrl": "https://cloudkms.googleapis.com/", + "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": "", + "id": "cloudkms:v1", + "documentationLink": "https://cloud.google.com/kms/", + "revision": "20170621" } diff --git a/DiscoveryJson/cloudresourcemanager_v1.json b/DiscoveryJson/cloudresourcemanager_v1.json index 3853aa84b8..2b760e498f 100644 --- a/DiscoveryJson/cloudresourcemanager_v1.json +++ b/DiscoveryJson/cloudresourcemanager_v1.json @@ -1,1063 +1,693 @@ { - "schemas": { - "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" + "ownerName": "Google", + "resources": { + "folders": { + "methods": { + "listAvailableOrgPolicyConstraints": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "ListAvailableOrgPolicyConstraintsResponse" }, - "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" - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "resource": { + "description": "Name of the resource to list `Constraints` for.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "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." }, - "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" - }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "items": { - "$ref": "AuditLogConfig" + "listOrgPolicies": { + "description": "Lists all the `Policies` set for a particular resource.", + "request": { + "$ref": "ListOrgPoliciesRequest" }, - "type": "array" + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "Name of the resource to list Policies for.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/folders/{foldersId}:listOrgPolicies", + "id": "cloudresourcemanager.folders.listOrgPolicies", + "path": "v1/{+resource}:listOrgPolicies" }, - "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" - }, - "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": { - "description": { - "description": "Detailed description of what this `Constraint` controls as well as how and\nwhere it is enforced.\n\nMutable.", - "type": "string" + "getOrgPolicy": { + "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", + "request": { + "$ref": "GetOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "Name of the resource the `Policy` is set on.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/folders/{foldersId}:getOrgPolicy", + "id": "cloudresourcemanager.folders.getOrgPolicy", + "path": "v1/{+resource}:getOrgPolicy" }, - "displayName": { - "description": "The human readable name.\n\nMutable.", - "type": "string" + "getEffectiveOrgPolicy": { + "request": { + "$ref": "GetEffectiveOrgPolicyRequest" + }, + "description": "Gets the effective `Policy` on a resource. This is the result of merging\n`Policies` in the resource hierarchy. The returned `Policy` will not have\nan `etag`set because it is a computed `Policy` across multiple resources.", + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "resource": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "The name of the resource to start computing the effective `Policy`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/folders/{foldersId}:getEffectiveOrgPolicy", + "id": "cloudresourcemanager.folders.getEffectiveOrgPolicy", + "path": "v1/{+resource}:getEffectiveOrgPolicy" }, - "booleanConstraint": { - "description": "Defines this constraint as being a BooleanConstraint.", - "$ref": "BooleanConstraint" + "clearOrgPolicy": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "resource": { + "description": "Name of the resource for the `Policy` to clear.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "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" + } }, - "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." + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" ], - "enum": [ - "CONSTRAINT_DEFAULT_UNSPECIFIED", - "ALLOW", - "DENY" + "response": { + "$ref": "OrgPolicy" + }, + "parameters": { + "resource": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "Resource name of the resource to attach the `Policy`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ] - }, - "name": { - "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`", - "type": "string" - }, - "version": { - "format": "int32", - "description": "Version of the `Constraint`. Default version is 0;", - "type": "integer" - }, - "listConstraint": { - "$ref": "ListConstraint", - "description": "Defines this constraint as being a ListConstraint." } - }, - "id": "Constraint" + } }, - "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" - }, - "liens": { - "description": "A list of Liens.", - "items": { - "$ref": "Lien" - }, - "type": "array" - } - }, - "id": "ListLiensResponse" - }, - "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.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "items": { - "type": "string" - }, - "type": "array" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "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" - }, - "GetOrgPolicyRequest": { - "properties": { - "constraint": { - "description": "Name of the `Constraint` to get the `Policy`.", - "type": "string" - } - }, - "id": "GetOrgPolicyRequest", - "description": "The request sent to the GetOrgPolicy method.", - "type": "object" - }, - "ClearOrgPolicyRequest": { - "description": "The request sent to the ClearOrgPolicy method.", - "type": "object", - "properties": { - "etag": { - "format": "byte", - "description": "The current version, for concurrency control. Not sending an `etag`\nwill cause the `Policy` to be cleared blindly.", - "type": "string" - }, - "constraint": { - "description": "Name of the `Constraint` of the `Policy` to clear.", - "type": "string" - } - }, - "id": "ClearOrgPolicyRequest" - }, - "UndeleteProjectRequest": { - "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object", - "properties": {}, - "id": "UndeleteProjectRequest" - }, - "ProjectCreationStatus": { - "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", - "type": "object", - "properties": { - "ready": { - "description": "True if the project creation process is complete.", - "type": "boolean" - }, - "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" - }, - "createTime": { - "format": "google-datetime", - "description": "Creation time of the project creation workflow.", - "type": "string" - } - }, - "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" - }, - "GetIamPolicyRequest": { - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method." - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsResponse" - }, - "OrganizationOwner": { - "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", - "type": "object", - "properties": { - "directoryCustomerId": { - "description": "The Google for Work customer id used in the Directory API.", - "type": "string" - } - }, - "id": "OrganizationOwner" - }, - "ListProjectsResponse": { - "description": "A page of the response received from the\nListProjects\nmethod.\n\nA paginated response where more pages are available has\n`next_page_token` set. This token can be used in a subsequent request to\nretrieve the next request page.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Pagination token.\n\nIf the result set is too large to fit in a single response, this token\nis returned. It encodes the position of the current result cursor.\nFeeding this value into a new list request with the `page_token` parameter\ngives the next page of the results.\n\nWhen `next_page_token` is not filled in, there is no next page and\nthe list returned is the last page in the result set.\n\nPagination tokens have a limited lifetime.", - "type": "string" - }, - "projects": { - "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", - "items": { - "$ref": "Project" - }, - "type": "array" - } - }, - "id": "ListProjectsResponse" - }, - "Project": { - "description": "A Project is a high-level Google Cloud Platform entity. It is a\ncontainer for ACLs, APIs, App Engine Apps, VMs, and other\nGoogle Cloud Platform resources.", - "type": "object", - "properties": { - "projectNumber": { - "format": "int64", - "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", - "type": "string" - }, - "parent": { - "$ref": "ResourceId", - "description": "An optional reference to a parent Resource.\n\nThe only supported parent type is \"organization\". Once set, the parent\ncannot be modified. The `parent` can be set on creation or using the\n`UpdateProject` method; the end user must have the\n`resourcemanager.projects.create` permission on the parent.\n\nRead-write." - }, - "labels": { - "additionalProperties": { - "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" - }, - "createTime": { - "format": "google-datetime", - "description": "Creation time.\n\nRead-only.", - "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": { - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED", - "DELETE_IN_PROGRESS" - ], - "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." - ] - } - }, - "id": "Project" - }, - "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" - }, - "organizations": { - "description": "The list of Organizations that matched the search query, possibly\npaginated.", - "items": { - "$ref": "Organization" - }, - "type": "array" - } - }, - "id": "SearchOrganizationsResponse" - }, - "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.", - "items": { - "$ref": "OrgPolicy" - }, - "type": "array" - }, - "nextPageToken": { - "type": "string", - "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." - } - }, - "id": "ListOrgPoliciesResponse" - }, - "FolderOperationError": { - "id": "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." - ] - } - } - }, - "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" - } - }, - "id": "BooleanPolicy" - }, - "OrgPolicy": { - "type": "object", - "properties": { - "restoreDefault": { - "$ref": "RestoreDefault", - "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type." - }, - "listPolicy": { - "description": "List of values either allowed or disallowed.", - "$ref": "ListPolicy" - }, - "etag": { - "format": "byte", - "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`.", - "type": "string" - }, - "constraint": { - "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", - "type": "string" - }, - "booleanPolicy": { - "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not.", - "$ref": "BooleanPolicy" - }, - "updateTime": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "version": { - "type": "integer", - "format": "int32", - "description": "Version of the `Policy`. Default version is 0;" - } - }, - "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": { - "format": "google-datetime", - "description": "The creation time of this Lien.", - "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": { - "items": { - "type": "string" - }, - "type": "array", - "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']" - } - }, - "id": "Lien" - }, - "Ancestor": { - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "Resource id of the ancestor." - } - }, - "id": "Ancestor", - "description": "Identifying information for a single ancestor of a project.", - "type": "object" - }, - "ListConstraint": { - "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": { - "description": "The request sent to the SetOrgPolicyRequest method.", - "type": "object", - "properties": { - "policy": { - "$ref": "OrgPolicy", - "description": "`Policy` to set on the resource." - } - }, - "id": "SetOrgPolicyRequest" - }, - "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": { - "format": "google-fieldmask", - "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.", - "type": "string" - } - }, - "id": "SetIamPolicyRequest" - }, - "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": { - "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." - ] - }, - "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" - }, - "displayName": { - "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", - "type": "string" - }, - "creationTime": { - "format": "google-datetime", - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "type": "string" - } - }, - "id": "Organization" - }, - "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": { - "description": "The collection of constraints that are settable on the request resource.", - "items": { - "$ref": "Constraint" - }, - "type": "array" - } - }, - "id": "ListAvailableOrgPolicyConstraintsResponse" - }, - "ListPolicy": { - "description": "Used in `policy_type` to specify how `list_policy` behaves at this\nresource.\n\nA `ListPolicy` can define specific values that are allowed or denied by\nsetting either the `allowed_values` or `denied_values` fields. It can also\nbe used to allow or deny all values, by setting the `all_values` field. If\n`all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`\nor `denied_values` must be set (attempting to set both or neither will\nresult in a failed request). If `all_values` is set to either `ALLOW` or\n`DENY`, `allowed_values` and `denied_values` must be unset.", - "type": "object", - "properties": { - "allValues": { - "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." - ], - "enum": [ - "ALL_VALUES_UNSPECIFIED", - "ALLOW", - "DENY" - ], - "description": "The policy all_values state.", - "type": "string" - }, - "allowedValues": { - "description": "List of values allowed at this resource. Can only be set if no values\nare set for `denied_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", - "items": { - "type": "string" - }, - "type": "array" - }, - "inheritFromParent": { - "type": "boolean", - "description": "Determines the inheritance behavior for this `Policy`.\n\nBy default, a `ListPolicy` set at a resource supercedes any `Policy` set\nanywhere up the resource hierarchy. However, if `inherit_from_parent` is\nset to `true`, then the values from the effective `Policy` of the parent\nresource are inherited, meaning the values set in this `Policy` are\nadded to the values inherited up the hierarchy.\n\nSetting `Policy` hierarchies that inherit both allowed values and denied\nvalues isn't recommended in most circumstances to keep the configuration\nsimple and understandable. However, it is possible to set a `Policy` with\n`allowed_values` set that inherits a `Policy` with `denied_values` set.\nIn this case, the values that are allowed must be in `allowed_values` and\nnot present in `denied_values`.\n\nFor example, suppose you have a `Constraint`\n`constraints/serviceuser.services`, which has a `constraint_type` of\n`list_constraint`, and with `constraint_default` set to `ALLOW`.\nSuppose that at the Organization level, a `Policy` is applied that\nrestricts the allowed API activations to {`E1`, `E2`}. Then, if a\n`Policy` is applied to a project below the Organization that has\n`inherit_from_parent` set to `false` and field all_values set to DENY,\nthen an attempt to activate any API will be denied.\n\nThe following examples demonstrate different possible layerings:\n\nExample 1 (no inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n ``projects/bar`` has `inherit_from_parent` `false` and values:\n {allowed_values: \"E3\" allowed_values: \"E4\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E3`, and `E4`.\n\nExample 2 (inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {value: “E3” value: ”E4” inherit_from_parent: true}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.\n\nExample 3 (inheriting both allowed and denied values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: \"E1\" allowed_values: \"E2\"}\n `projects/bar` has a `Policy` with:\n {denied_values: \"E1\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe value accepted at `projects/bar` is `E2`.\n\nExample 4 (RestoreDefault):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {RestoreDefault: {}}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 5 (no policy inherits parent policy):\n `organizations/foo` has no `Policy` set.\n `projects/bar` has no `Policy` set.\nThe accepted values at both levels are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 6 (ListConstraint allowing all):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: ALLOW}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nAny value is accepted at `projects/bar`.\n\nExample 7 (ListConstraint allowing none):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: DENY}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nNo value is accepted at `projects/bar`." - }, - "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" - }, - "deniedValues": { - "description": "List of values denied at this resource. Can only be set if no values are\nset for `allowed_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", - "items": { - "type": "string" + "projects": { + "methods": { + "setIamPolicy": { + "id": "cloudresourcemanager.projects.setIamPolicy", + "path": "v1/projects/{resource}:setIamPolicy", + "description": "Sets the IAM access control policy for the specified Project. Replaces\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`;\nthey must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ Calling this method requires enabling the App Engine Admin API.\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" }, - "type": "array" - } - }, - "id": "ListPolicy" - }, - "GetAncestryResponse": { - "description": "Response from the GetAncestry method.", - "type": "object", - "properties": { - "ancestor": { - "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", - "items": { - "$ref": "Ancestor" + "response": { + "$ref": "Policy" }, - "type": "array" - } - }, - "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.", - "items": { - "type": "string" + "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.", + "type": "string", + "required": true, + "location": "path" + } }, - "type": "array" - }, - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ] - } - }, - "id": "AuditLogConfig" - }, - "SearchOrganizationsRequest": { - "type": "object", - "properties": { - "filter": { - "type": "string", - "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\n`owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional." - }, - "pageToken": { - "type": "string", - "description": "A pagination token returned from a previous call to `SearchOrganizations`\nthat indicates from where listing should continue.\nThis field is optional." + "flatPath": "v1/projects/{resource}:setIamPolicy" }, - "pageSize": { - "format": "int32", - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", - "type": "integer" - } - }, - "id": "SearchOrganizationsRequest", - "description": "The request sent to the `SearchOrganizations` method." - }, - "GetAncestryRequest": { - "description": "The request sent to the\nGetAncestry\nmethod.", - "type": "object", - "properties": {}, - "id": "GetAncestryRequest" - }, - "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).", - "items": { - "type": "string" + "listAvailableOrgPolicyConstraints": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "ListAvailableOrgPolicyConstraintsResponse" }, - "type": "array" - } - }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method." - }, - "ListAvailableOrgPolicyConstraintsRequest": { - "description": "The request sent to the [ListAvailableOrgPolicyConstraints]\ngoogle.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.", - "type": "object", - "properties": { - "pageToken": { - "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "format": "int32", - "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." - } - }, - "id": "ListAvailableOrgPolicyConstraintsRequest" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" - }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" + "parameters": { + "resource": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Name of the resource to list `Constraints` for.", + "type": "string", + "required": true + } }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints", + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints", + "description": "Lists `Constraints` that could be applied on the specified resource.", + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + } }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" + "getIamPolicy": { + "flatPath": "v1/projects/{resource}:getIamPolicy", + "id": "cloudresourcemanager.projects.getIamPolicy", + "path": "v1/projects/{resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" }, - "type": "array" - } - }, - "id": "Policy" - }, - "FolderOperation": { - "properties": { - "operationType": { - "type": "string", - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." + "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", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "The type of this operation." - }, - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" + "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.", + "type": "string", + "required": true + } + } }, - "displayName": { - "type": "string", - "description": "The display name of the folder." + "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": { + "description": "Name of the resource the `Policy` is set on.", + "type": "string", + "required": true, + "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}:getOrgPolicy", + "path": "v1/{+resource}:getOrgPolicy", + "id": "cloudresourcemanager.projects.getOrgPolicy" }, - "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" - }, - "ResourceId": { - "properties": { - "type": { - "description": "Required field representing the resource type this id is for.\nAt present, the valid types are: \"organization\"", - "type": "string" + "getEffectiveOrgPolicy": { + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "The name of the resource to start computing the effective `Policy`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", + "id": "cloudresourcemanager.projects.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": "GetEffectiveOrgPolicyRequest" + } }, - "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": { - "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": { - "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": { + "flatPath": "v1/projects/{projectId}:undelete", + "id": "cloudresourcemanager.projects.undelete", + "path": "v1/projects/{projectId}: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": { + "type": "string", + "required": true, + "location": "path", + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "pageSize": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "ListOrgPoliciesRequest" - } - }, - "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 Resource Manager", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" + "update": { + "response": { + "$ref": "Project" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "The project ID (for example, `my-project-123`).\n\nRequired.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/projects/{projectId}", + "id": "cloudresourcemanager.projects.update", + "path": "v1/projects/{projectId}", + "request": { + "$ref": "Project" + }, + "description": "Updates the attributes of the Project identified by the specified\n`project_id` (for example, `my-project-123`).\n\nThe caller must have modify permissions for this Project." }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudresourcemanager", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Resource Manager API", - "ownerName": "Google", - "resources": { - "folders": { - "methods": { - "clearOrgPolicy": { - "flatPath": "v1/folders/{foldersId}:clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "id": "cloudresourcemanager.folders.clearOrgPolicy", - "description": "Clears a `Policy` from a resource.", + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListProjectsResponse" + }, + "parameterOrder": [], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "filter": { + "location": "query", + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "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.", + "type": "integer" + } + }, + "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.\nNew Projects do not necessarily appear at the end of the list." + }, + "setOrgPolicy": { "request": { - "$ref": "ClearOrgPolicyRequest" + "$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`.", + "response": { + "$ref": "OrgPolicy" }, - "httpMethod": "POST", "parameterOrder": [ "resource" ], - "response": { - "$ref": "Empty" - }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { + "pattern": "^projects/[^/]+$", "location": "path", - "description": "Name of the resource for the `Policy` to clear.", + "description": "Resource name of the resource to attach the `Policy`.", "type": "string", - "required": true, - "pattern": "^folders/[^/]+$" + "required": true } }, + "flatPath": "v1/projects/{projectsId}:setOrgPolicy", + "id": "cloudresourcemanager.projects.setOrgPolicy", + "path": "v1/{+resource}:setOrgPolicy" + }, + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1/projects", + "id": "cloudresourcemanager.projects.create", + "path": "v1/projects", + "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.", + "request": { + "$ref": "Project" + } }, - "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`.", + "listOrgPolicies": { "request": { - "$ref": "SetOrgPolicyRequest" + "$ref": "ListOrgPoliciesRequest" + }, + "description": "Lists all the `Policies` set for a particular resource.", + "response": { + "$ref": "ListOrgPoliciesResponse" }, - "httpMethod": "POST", "parameterOrder": [ "resource" ], - "response": { - "$ref": "OrgPolicy" - }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { "resource": { - "pattern": "^folders/[^/]+$", "location": "path", - "description": "Resource name of the resource to attach the `Policy`.", + "description": "Name of the resource to list Policies for.", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+$" } }, + "flatPath": "v1/projects/{projectsId}:listOrgPolicies", + "id": "cloudresourcemanager.projects.listOrgPolicies", + "path": "v1/{+resource}:listOrgPolicies" + }, + "get": { + "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.", + "response": { + "$ref": "Project" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "GET", "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/folders/{foldersId}:setOrgPolicy" + "parameters": { + "projectId": { + "location": "path", + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "type": "string", + "required": true + } + } }, - "listAvailableOrgPolicyConstraints": { + "getAncestry": { + "flatPath": "v1/projects/{projectId}:getAncestry", + "path": "v1/projects/{projectId}:getAncestry", + "id": "cloudresourcemanager.projects.getAncestry", + "request": { + "$ref": "GetAncestryRequest" + }, + "description": "Gets a list of ancestors in the resource hierarchy for the Project\nidentified by the specified `project_id` (for example, `my-project-123`).\n\nThe caller must have read permissions for this Project.", "httpMethod": "POST", "parameterOrder": [ - "resource" + "projectId" ], "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" + "$ref": "GetAncestryResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { - "resource": { - "type": "string", - "required": true, - "pattern": "^folders/[^/]+$", + "projectId": { "location": "path", - "description": "Name of the resource to list `Constraints` for." + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "type": "string", + "required": true } - }, - "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." + } }, - "listOrgPolicies": { + "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": "ListOrgPoliciesRequest" + "$ref": "TestIamPermissionsRequest" }, - "description": "Lists all the `Policies` set for a particular resource.", "response": { - "$ref": "ListOrgPoliciesResponse" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ "resource" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "resource": { - "location": "path", - "description": "Name of the resource to list Policies for.", + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^folders/[^/]+$" + "location": "path" } }, - "flatPath": "v1/folders/{foldersId}:listOrgPolicies", - "id": "cloudresourcemanager.folders.listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies" + "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" }, - "getOrgPolicy": { + "delete": { "response": { - "$ref": "OrgPolicy" + "$ref": "Empty" }, "parameterOrder": [ - "resource" + "projectId" ], - "httpMethod": "POST", + "httpMethod": "DELETE", "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": { - "resource": { - "description": "Name of the resource the `Policy` is set on.", + "projectId": { + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", "type": "string", "required": true, - "pattern": "^folders/[^/]+$", "location": "path" } }, - "flatPath": "v1/folders/{foldersId}:getOrgPolicy", - "id": "cloudresourcemanager.folders.getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy", + "flatPath": "v1/projects/{projectId}", + "id": "cloudresourcemanager.projects.delete", + "path": "v1/projects/{projectId}", + "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project." + }, + "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." - }, - "getEffectiveOrgPolicy": { "httpMethod": "POST", "parameterOrder": [ "resource" ], "response": { - "$ref": "OrgPolicy" + "$ref": "Empty" }, "parameters": { "resource": { "location": "path", - "description": "The name of the resource to start computing the effective `Policy`.", + "description": "Name of the resource for the `Policy` to clear.", "type": "string", "required": true, - "pattern": "^folders/[^/]+$" + "pattern": "^projects/[^/]+$" } }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], - "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" - } + "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", + "path": "v1/{+resource}:clearOrgPolicy", + "id": "cloudresourcemanager.projects.clearOrgPolicy" } } }, - "projects": { + "organizations": { "methods": { - "getEffectiveOrgPolicy": { - "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.projects.getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", + "listAvailableOrgPolicyConstraints": { + "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": { + "pattern": "^organizations/[^/]+$", + "location": "path", + "description": "Name of the resource to list `Constraints` for.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints", + "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints", + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + }, + "description": "Lists `Constraints` that could be applied on the specified resource." + }, + "listOrgPolicies": { + "request": { + "$ref": "ListOrgPoliciesRequest" + }, + "description": "Lists all the `Policies` set for a particular resource.", + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "resource": { + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+$", + "location": "path", + "description": "Name of the resource to list Policies for." + } + }, + "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies", + "id": "cloudresourcemanager.organizations.listOrgPolicies", + "path": "v1/{+resource}:listOrgPolicies" + }, + "getIamPolicy": { + "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", + "id": "cloudresourcemanager.organizations.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", "request": { - "$ref": "GetEffectiveOrgPolicyRequest" + "$ref": "GetIamPolicyRequest" }, - "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.", + "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" @@ -1069,940 +699,1310 @@ ], "parameters": { "resource": { - "description": "The name of the resource to start computing the effective `Policy`.", + "location": "path", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^organizations/[^/]+$" } } }, - "undelete": { + "search": { + "response": { + "$ref": "SearchOrganizationsResponse" + }, + "parameterOrder": [], "httpMethod": "POST", - "parameterOrder": [ - "projectId" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "response": { - "$ref": "Empty" + "parameters": {}, + "flatPath": "v1/organizations:search", + "id": "cloudresourcemanager.organizations.search", + "path": "v1/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`" + }, + "getOrgPolicy": { + "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, `foo-bar-123`).\n\nRequired.", + "resource": { + "location": "path", + "description": "Name of the resource the `Policy` is set on.", "type": "string", "required": true, - "location": "path" + "pattern": "^organizations/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}:undelete", - "path": "v1/projects/{projectId}:undelete", - "id": "cloudresourcemanager.projects.undelete", - "description": "Restores the Project identified by the specified\n`project_id` (for example, `my-project-123`).\nYou can only use this method for a Project that has a lifecycle state of\nDELETE_REQUESTED.\nAfter deletion starts, the Project cannot be restored.\n\nThe caller must have modify permissions for this Project.", - "request": { - "$ref": "UndeleteProjectRequest" - } - }, - "update": { + "flatPath": "v1/organizations/{organizationsId}:getOrgPolicy", + "id": "cloudresourcemanager.organizations.getOrgPolicy", + "path": "v1/{+resource}:getOrgPolicy", "request": { - "$ref": "Project" + "$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.", + "response": { + "$ref": "OrgPolicy" }, - "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.", - "httpMethod": "PUT", "parameterOrder": [ - "projectId" + "resource" ], + "httpMethod": "POST" + }, + "get": { "response": { - "$ref": "Project" + "$ref": "Organization" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "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": { + "name": { "location": "path", - "description": "The project ID (for example, `my-project-123`).\n\nRequired.", + "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", "type": "string", - "required": true + "required": true, + "pattern": "^organizations/[^/]+$" } }, - "flatPath": "v1/projects/{projectId}", - "path": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.update" + "flatPath": "v1/organizations/{organizationsId}", + "id": "cloudresourcemanager.organizations.get", + "path": "v1/{+name}", + "description": "Fetches an Organization resource identified by the specified resource name." }, - "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.\nNew Projects do not necessarily appear at the end of the list.", + "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": "GetEffectiveOrgPolicyRequest" + }, "response": { - "$ref": "ListProjectsResponse" + "$ref": "OrgPolicy" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", "parameters": { - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "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.", - "type": "integer", - "location": "query" + "resource": { + "location": "path", + "description": "The name of the resource to start computing the effective `Policy`.", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - }, - "setOrgPolicy": { - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" ], - "httpMethod": "POST", + "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy" + }, + "testIamPermissions": { "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": { "resource": { - "description": "Resource name of the resource to attach the `Policy`.", + "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^organizations/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}:setOrgPolicy", - "id": "cloudresourcemanager.projects.setOrgPolicy", - "path": "v1/{+resource}: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`." - }, - "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.", + "flatPath": "v1/organizations/{organizationsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "cloudresourcemanager.organizations.testIamPermissions", "request": { - "$ref": "Project" - }, - "response": { - "$ref": "Operation" + "$ref": "TestIamPermissionsRequest" }, - "parameterOrder": [], + "description": "Returns permissions that a caller has on the specified Organization.\nThe `resource` field should be the organization's resource name,\ne.g. \"organizations/123\".\n\nThere are no permissions required for making this API call.", "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "resource" ], - "flatPath": "v1/projects", - "id": "cloudresourcemanager.projects.create", - "path": "v1/projects" + "response": { + "$ref": "TestIamPermissionsResponse" + } }, - "listOrgPolicies": { + "clearOrgPolicy": { + "description": "Clears a `Policy` from a resource.", + "request": { + "$ref": "ClearOrgPolicyRequest" + }, "httpMethod": "POST", "parameterOrder": [ "resource" ], "response": { - "$ref": "ListOrgPoliciesResponse" + "$ref": "Empty" }, "parameters": { "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Name of the resource to list Policies for.", + "description": "Name of the resource for the `Policy` to clear.", "type": "string", - "required": true + "required": true, + "pattern": "^organizations/[^/]+$", + "location": "path" } }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], - "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" - } + "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy", + "path": "v1/{+resource}:clearOrgPolicy", + "id": "cloudresourcemanager.organizations.clearOrgPolicy" }, - "get": { + "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`.", "response": { - "$ref": "Project" + "$ref": "OrgPolicy" }, "parameterOrder": [ - "projectId" + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { - "projectId": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "resource": { + "description": "Resource name of the resource to attach the `Policy`.", "type": "string", "required": true, + "pattern": "^organizations/[^/]+$", "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." + "flatPath": "v1/organizations/{organizationsId}:setOrgPolicy", + "id": "cloudresourcemanager.organizations.setOrgPolicy", + "path": "v1/{+resource}:setOrgPolicy" }, - "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.", + "setIamPolicy": { "httpMethod": "POST", "parameterOrder": [ - "projectId" + "resource" ], "response": { - "$ref": "GetAncestryResponse" + "$ref": "Policy" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "projectId": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "resource": { "type": "string", "required": true, - "location": "path" + "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." } }, - "flatPath": "v1/projects/{projectId}:getAncestry", - "path": "v1/projects/{projectId}:getAncestry", - "id": "cloudresourcemanager.projects.getAncestry" - }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified Project.\n\nThere are no permissions required for making this API call.", + "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "cloudresourcemanager.organizations.setIamPolicy", "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "SetIamPolicyRequest" }, + "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".\n\nAuthorization requires the Google IAM permission\n`resourcemanager.organizations.setIamPolicy` on the specified organization" + } + } + }, + "operations": { + "methods": { + "get": { + "path": "v1/{+name}", + "id": "cloudresourcemanager.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", "parameterOrder": [ - "resource" + "name" ], - "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, "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.", + "name": { "type": "string", "required": true, - "location": "path" + "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" ], - "flatPath": "v1/projects/{resource}:testIamPermissions", - "id": "cloudresourcemanager.projects.testIamPermissions", - "path": "v1/projects/{resource}:testIamPermissions" + "flatPath": "v1/operations/{operationsId}" + } + } + }, + "liens": { + "methods": { + "create": { + "flatPath": "v1/liens", + "id": "cloudresourcemanager.liens.create", + "path": "v1/liens", + "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" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, "delete": { - "flatPath": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.delete", - "path": "v1/projects/{projectId}", - "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time,\nat which point the Project is no longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + "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`.", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], "response": { "$ref": "Empty" }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "DELETE", "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.", + "name": { + "description": "The name/identifier of the Lien to delete.", "type": "string", - "required": true + "required": true, + "pattern": "^liens/.+$", + "location": "path" } } }, - "clearOrgPolicy": { - "description": "Clears a `Policy` from a resource.", - "request": { - "$ref": "ClearOrgPolicyRequest" - }, + "list": { + "httpMethod": "GET", + "parameterOrder": [], "response": { - "$ref": "Empty" + "$ref": "ListLiensResponse" }, - "parameterOrder": [ - "resource" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "httpMethod": "POST", "parameters": { - "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Name of the resource for the `Policy` to clear.", - "type": "string", - "required": true + "pageToken": { + "location": "query", + "description": "The `next_page_token` value returned from a previous List request, if any.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of items to return. This is a suggestion for the server.", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "query", + "description": "The name of the resource to list all attached Liens.\nFor example, `projects/1234`.", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", - "id": "cloudresourcemanager.projects.clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy" + "flatPath": "v1/liens", + "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`." + } + } + } + }, + "parameters": { + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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.", + "default": "true", + "type": "boolean", + "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": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "alt": { + "location": "query", + "description": "Data format for response.", + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ] + }, + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + }, + "key": { + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "quotaUser": { + "type": "string", + "location": "query", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." + } + }, + "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": "", + "revision": "20170717", + "documentationLink": "https://cloud.google.com/resource-manager", + "id": "cloudresourcemanager:v1", + "discoveryVersion": "v1", + "schemas": { + "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" + }, + "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": { + "description": "The request sent to the SetOrgPolicyRequest method.", + "type": "object", + "properties": { + "policy": { + "description": "`Policy` to set on the resource.", + "$ref": "OrgPolicy" + } + }, + "id": "SetOrgPolicyRequest" + }, + "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." }, - "setIamPolicy": { - "id": "cloudresourcemanager.projects.setIamPolicy", - "path": "v1/projects/{resource}:setIamPolicy", - "description": "Sets the IAM access control policy for the specified Project. Replaces\nany existing policy.\n\nThe following constraints apply when using `setIamPolicy()`:\n\n+ Project does not support `allUsers` and `allAuthenticatedUsers` as\n`members` in a `Binding` of a `Policy`.\n\n+ The owner role can be granted only to `user` and `serviceAccount`.\n\n+ Service accounts can be made owners of a project directly\nwithout any restrictions. However, to be added as an owner, a user must be\ninvited via Cloud Platform console and must accept the invitation.\n\n+ A user cannot be granted the owner role using `setIamPolicy()`. The user\nmust be granted the owner role using the Cloud Platform Console and must\nexplicitly accept the invitation.\n\n+ Invitations to grant the owner role cannot be sent using\n`setIamPolicy()`;\nthey must be sent only using the Cloud Platform Console.\n\n+ Membership changes that leave the project without any owners that have\naccepted the Terms of Service (ToS) will be rejected.\n\n+ If the project is not part of an organization, there must be at least\none owner who has accepted the Terms of Service (ToS) agreement in the\npolicy. Calling `setIamPolicy()` to remove the last ToS-accepted owner\nfrom the policy will fail. This restriction also applies to legacy\nprojects that no longer have owners who have accepted the ToS. Edits to\nIAM policies will be rejected until the lack of a ToS-accepting owner is\nrectified.\n\n+ Calling this method requires enabling the App Engine Admin API.\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": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{resource}:setIamPolicy" + "updateMask": { + "format": "google-fieldmask", + "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.", + "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": { + "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\"." }, - "listAvailableOrgPolicyConstraints": { - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" - }, - "description": "Lists `Constraints` that could be applied on the specified resource.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "description": "Name of the resource to list `Constraints` for.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints" + "displayName": { + "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", + "type": "string" }, - "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", - "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": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{resource}:getIamPolicy", - "id": "cloudresourcemanager.projects.getIamPolicy", - "path": "v1/projects/{resource}:getIamPolicy" + "creationTime": { + "format": "google-datetime", + "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", + "type": "string" }, - "getOrgPolicy": { - "description": "Gets a `Policy` on a resource.\n\nIf no `Policy` is set on the resource, a `Policy` is returned with default\nvalues including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The\n`etag` value can be used with `SetOrgPolicy()` to create or update a\n`Policy` during read-modify-write.", - "request": { - "$ref": "GetOrgPolicyRequest" - }, - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Name of the resource the `Policy` is set on.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "lifecycleState": { + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" ], - "flatPath": "v1/projects/{projectsId}:getOrgPolicy", - "id": "cloudresourcemanager.projects.getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy" + "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." + ] + }, + "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." } } }, - "organizations": { - "methods": { - "listAvailableOrgPolicyConstraints": { - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" + "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": { + "items": { + "$ref": "Constraint" }, - "description": "Lists `Constraints` that could be applied on the specified resource.", - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" + "type": "array", + "description": "The collection of constraints that are settable on the request resource." + } + }, + "id": "ListAvailableOrgPolicyConstraintsResponse" + }, + "ListPolicy": { + "description": "Used in `policy_type` to specify how `list_policy` behaves at this\nresource.\n\nA `ListPolicy` can define specific values that are allowed or denied by\nsetting either the `allowed_values` or `denied_values` fields. It can also\nbe used to allow or deny all values, by setting the `all_values` field. If\n`all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values`\nor `denied_values` must be set (attempting to set both or neither will\nresult in a failed request). If `all_values` is set to either `ALLOW` or\n`DENY`, `allowed_values` and `denied_values` must be unset.", + "type": "object", + "properties": { + "inheritFromParent": { + "description": "Determines the inheritance behavior for this `Policy`.\n\nBy default, a `ListPolicy` set at a resource supercedes any `Policy` set\nanywhere up the resource hierarchy. However, if `inherit_from_parent` is\nset to `true`, then the values from the effective `Policy` of the parent\nresource are inherited, meaning the values set in this `Policy` are\nadded to the values inherited up the hierarchy.\n\nSetting `Policy` hierarchies that inherit both allowed values and denied\nvalues isn't recommended in most circumstances to keep the configuration\nsimple and understandable. However, it is possible to set a `Policy` with\n`allowed_values` set that inherits a `Policy` with `denied_values` set.\nIn this case, the values that are allowed must be in `allowed_values` and\nnot present in `denied_values`.\n\nFor example, suppose you have a `Constraint`\n`constraints/serviceuser.services`, which has a `constraint_type` of\n`list_constraint`, and with `constraint_default` set to `ALLOW`.\nSuppose that at the Organization level, a `Policy` is applied that\nrestricts the allowed API activations to {`E1`, `E2`}. Then, if a\n`Policy` is applied to a project below the Organization that has\n`inherit_from_parent` set to `false` and field all_values set to DENY,\nthen an attempt to activate any API will be denied.\n\nThe following examples demonstrate different possible layerings:\n\nExample 1 (no inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n ``projects/bar`` has `inherit_from_parent` `false` and values:\n {allowed_values: \"E3\" allowed_values: \"E4\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E3`, and `E4`.\n\nExample 2 (inherited values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {value: “E3” value: ”E4” inherit_from_parent: true}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.\n\nExample 3 (inheriting both allowed and denied values):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: \"E1\" allowed_values: \"E2\"}\n `projects/bar` has a `Policy` with:\n {denied_values: \"E1\"}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe value accepted at `projects/bar` is `E2`.\n\nExample 4 (RestoreDefault):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values:”E2”}\n `projects/bar` has a `Policy` with values:\n {RestoreDefault: {}}\nThe accepted values at `organizations/foo` are `E1`, `E2`.\nThe accepted values at `projects/bar` are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 5 (no policy inherits parent policy):\n `organizations/foo` has no `Policy` set.\n `projects/bar` has no `Policy` set.\nThe accepted values at both levels are either all or none depending on\nthe value of `constraint_default` (if `ALLOW`, all; if\n`DENY`, none).\n\nExample 6 (ListConstraint allowing all):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: ALLOW}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nAny value is accepted at `projects/bar`.\n\nExample 7 (ListConstraint allowing none):\n `organizations/foo` has a `Policy` with values:\n {allowed_values: “E1” allowed_values: ”E2”}\n `projects/bar` has a `Policy` with:\n {all: DENY}\nThe accepted values at `organizations/foo` are `E1`, E2`.\nNo value is accepted at `projects/bar`.", + "type": "boolean" + }, + "suggestedValue": { + "description": "Optional. The Google Cloud Console will try to default to a configuration\nthat matches the value specified in this `Policy`. If `suggested_value`\nis not set, it will inherit the value specified higher in the hierarchy,\nunless `inherit_from_parent` is `false`.", + "type": "string" + }, + "deniedValues": { + "description": "List of values denied at this resource. Can only be set if no values are\nset for `allowed_values` and `all_values` is set to\n`ALL_VALUES_UNSPECIFIED`.", + "items": { + "type": "string" }, - "parameterOrder": [ - "resource" + "type": "array" + }, + "allValues": { + "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": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "enum": [ + "ALL_VALUES_UNSPECIFIED", + "ALLOW", + "DENY" ], - "parameters": { - "resource": { - "description": "Name of the resource to list `Constraints` for.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints", - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints" + "description": "The policy all_values state.", + "type": "string" }, - "listOrgPolicies": { - "response": { - "$ref": "ListOrgPoliciesResponse" + "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`.", + "items": { + "type": "string" }, - "parameterOrder": [ - "resource" + "type": "array" + } + }, + "id": "ListPolicy" + }, + "GetAncestryResponse": { + "properties": { + "ancestor": { + "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The\nfirst ancestor is the project itself, followed by the project's parent,\netc.", + "items": { + "$ref": "Ancestor" + }, + "type": "array" + } + }, + "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": { + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Name of the resource to list Policies for.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" ], - "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies", - "id": "cloudresourcemanager.organizations.listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "description": "Lists all the `Policies` set for a particular resource.", - "request": { - "$ref": "ListOrgPoliciesRequest" - } + "description": "The log type that this config enables.", + "type": "string" }, - "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.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.organizations.getIamPolicy", - "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" + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - } + "type": "array" + } + }, + "id": "AuditLogConfig" + }, + "SearchOrganizationsRequest": { + "type": "object", + "properties": { + "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" }, - "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" + "pageSize": { + "format": "int32", + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "type": "integer" + }, + "filter": { + "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with\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" + } + }, + "id": "SearchOrganizationsRequest", + "description": "The request sent to the `SearchOrganizations` method." + }, + "GetAncestryRequest": { + "type": "object", + "properties": {}, + "id": "GetAncestryRequest", + "description": "The request sent to the\nGetAncestry\nmethod." + }, + "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).", + "items": { + "type": "string" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" + "type": "array" + } + }, + "id": "TestIamPermissionsRequest" + }, + "FolderOperation": { + "description": "Metadata describing a long running folder operation", + "type": "object", + "properties": { + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", + "type": "string" + }, + "displayName": { + "description": "The display name of the folder.", + "type": "string" + }, + "destinationParent": { + "type": "string", + "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to." + }, + "operationType": { + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" ], - "response": { - "$ref": "OrgPolicy" - }, - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Name of the resource the `Policy` is set on.", - "type": "string", - "required": true - } + "description": "The type of this operation.", + "type": "string", + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." + ] + } + }, + "id": "FolderOperation" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", + "type": "object", + "properties": { + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:getOrgPolicy" + "type": "array" }, - "search": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchOrganizationsResponse" + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": {}, - "flatPath": "v1/organizations:search", - "path": "v1/organizations:search", - "id": "cloudresourcemanager.organizations.search", - "request": { - "$ref": "SearchOrganizationsRequest" + "type": "array" + } + }, + "id": "Policy" + }, + "ListAvailableOrgPolicyConstraintsRequest": { + "description": "The request sent to the [ListAvailableOrgPolicyConstraints]\ngoogle.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method.", + "type": "object", + "properties": { + "pageToken": { + "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "ListAvailableOrgPolicyConstraintsRequest" + }, + "ResourceId": { + "description": "A container to reference an id for any resource type. A `resource` in Google\nCloud Platform is a generic term for something you (a developer) may want to\ninteract with through one of our API's. Some examples are an App Engine app,\na Compute Engine instance, a Cloud SQL database, and so on.", + "type": "object", + "properties": { + "type": { + "description": "Required field representing the resource type this id is for.\nAt present, the valid types are: \"organization\"", + "type": "string" + }, + "id": { + "description": "Required field for the type-specific id. This should correspond to the id\nused in the type-specific API's.", + "type": "string" + } + }, + "id": "ResourceId" + }, + "GetEffectiveOrgPolicyRequest": { + "type": "object", + "properties": { + "constraint": { + "type": "string", + "description": "The name of the `Constraint` to compute the effective `Policy`." + } + }, + "id": "GetEffectiveOrgPolicyRequest", + "description": "The request sent to the GetEffectiveOrgPolicy method." + }, + "ListOrgPoliciesRequest": { + "description": "The request sent to the ListOrgPolicies method.", + "type": "object", + "properties": { + "pageToken": { + "description": "Page token used to retrieve the next page. This is currently unsupported\nand will be ignored. The server may at any point start using this field.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "ListOrgPoliciesRequest" + }, + "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": "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`" + "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" }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Organization" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$" - } - }, - "flatPath": "v1/organizations/{organizationsId}", - "path": "v1/{+name}", - "id": "cloudresourcemanager.organizations.get", - "description": "Fetches an Organization resource identified by the specified resource name." + "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" }, - "getEffectiveOrgPolicy": { - "response": { - "$ref": "OrgPolicy" + "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": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "The name of the resource to start computing the effective `Policy`.", - "type": "string", - "required": true - } + "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" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "type": "object", + "properties": { + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + }, + "auditLogConfigs": { + "items": { + "$ref": "AuditLogConfig" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.organizations.getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "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" - } + "type": "array", + "description": "The configuration for logging of each type of permission.\nNext ID: 4" + } + }, + "id": "AuditConfig" + }, + "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": { + "listConstraint": { + "description": "Defines this constraint as being a ListConstraint.", + "$ref": "ListConstraint" }, - "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" + "version": { + "format": "int32", + "description": "Version of the `Constraint`. Default version is 0;", + "type": "integer" + }, + "displayName": { + "description": "The human readable name.\n\nMutable.", + "type": "string" + }, + "description": { + "description": "Detailed description of what this `Constraint` controls as well as how and\nwhere it is enforced.\n\nMutable.", + "type": "string" + }, + "booleanConstraint": { + "$ref": "BooleanConstraint", + "description": "Defines this constraint as being a BooleanConstraint." + }, + "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": "TestIamPermissionsResponse" + "enum": [ + "CONSTRAINT_DEFAULT_UNSPECIFIED", + "ALLOW", + "DENY" + ] + }, + "name": { + "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`", + "type": "string" + } + }, + "id": "Constraint" + }, + "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.", + "items": { + "$ref": "Lien" }, - "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.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$", - "location": "path" - } + "type": "array" + } + }, + "id": "ListLiensResponse", + "description": "The response message for Liens.ListLiens." + }, + "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}: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": "TestIamPermissionsRequest" - } + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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." + } + } + }, + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "id": "Binding" + }, + "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" + }, + "GetOrgPolicyRequest": { + "properties": { + "constraint": { + "description": "Name of the `Constraint` to get the `Policy`.", + "type": "string" + } + }, + "id": "GetOrgPolicyRequest", + "description": "The request sent to the GetOrgPolicy method.", + "type": "object" + }, + "UndeleteProjectRequest": { + "description": "The request sent to the UndeleteProject\nmethod.", + "type": "object", + "properties": {}, + "id": "UndeleteProjectRequest" + }, + "ClearOrgPolicyRequest": { + "description": "The request sent to the ClearOrgPolicy method.", + "type": "object", + "properties": { + "constraint": { + "description": "Name of the `Constraint` of the `Policy` to clear.", + "type": "string" + }, + "etag": { + "format": "byte", + "description": "The current version, for concurrency control. Not sending an `etag`\nwill cause the `Policy` to be cleared blindly.", + "type": "string" + } + }, + "id": "ClearOrgPolicyRequest" + }, + "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" }, - "clearOrgPolicy": { - "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy", - "id": "cloudresourcemanager.organizations.clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "request": { - "$ref": "ClearOrgPolicyRequest" + "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" + }, + "createTime": { + "format": "google-datetime", + "description": "Creation time of the project creation workflow.", + "type": "string" + } + }, + "id": "ProjectCreationStatus" + }, + "BooleanConstraint": { + "description": "A `Constraint` that is either enforced or not.\n\nFor example a constraint `constraints/compute.disableSerialPortAccess`.\nIf it is enforced on a VM instance, serial port connections will not be\nopened to that instance.", + "type": "object", + "properties": {}, + "id": "BooleanConstraint" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" }, - "description": "Clears a `Policy` from a resource.", - "response": { - "$ref": "Empty" + "type": "array" + } + }, + "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 Google for Work customer id used in the Directory API.", + "type": "string" + } + }, + "id": "OrganizationOwner" + }, + "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": { + "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", + "items": { + "$ref": "Project" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Name of the resource for the `Policy` to clear.", - "type": "string", - "required": true - } - } + "type": "array" }, - "setOrgPolicy": { - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.organizations.setOrgPolicy", - "description": "Updates the specified `Policy` on the resource. Creates a new `Policy` for\nthat `Constraint` on the resource if one does not exist.\n\nNot supplying an `etag` on the request `Policy` results in an unconditional\nwrite of the `Policy`.", - "request": { - "$ref": "SetOrgPolicyRequest" + "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": { + "parent": { + "$ref": "ResourceId", + "description": "An optional reference to a parent Resource.\n\nThe only supported parent type is \"organization\". Once set, the parent\ncannot be modified. 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": { + "type": "string", + "format": "google-datetime", + "description": "Creation time.\n\nRead-only." + }, + "labels": { + "additionalProperties": { + "type": "string" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" + "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\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." ], - "response": { - "$ref": "OrgPolicy" - }, - "parameters": { - "resource": { - "location": "path", - "description": "Resource name of the resource to attach the `Policy`.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED", + "DELETE_IN_PROGRESS" ], - "flatPath": "v1/organizations/{organizationsId}:setOrgPolicy" + "description": "The Project lifecycle state.\n\nRead-only.", + "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" + "projectNumber": { + "format": "int64", + "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", + "type": "string" + } + }, + "id": "Project" + }, + "SearchOrganizationsResponse": { + "id": "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" + }, + "organizations": { + "description": "The list of Organizations that matched the search query, possibly\npaginated.", + "items": { + "$ref": "Organization" }, - "response": { - "$ref": "Policy" + "type": "array" + } + } + }, + "ListOrgPoliciesResponse": { + "description": "The response returned from the ListOrgPolicies method. It will be empty\nif no `Policies` are set on the resource.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Page token used to retrieve the next page. This is currently not used, but\nthe server may at any point start supplying a valid token.", + "type": "string" + }, + "policies": { + "items": { + "$ref": "OrgPolicy" }, - "parameterOrder": [ - "resource" + "type": "array", + "description": "The `Policies` that are set on the resource. It will be empty if no\n`Policies` are set." + } + }, + "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." ], - "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.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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" ], - "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", - "id": "cloudresourcemanager.organizations.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" + "description": "The type of operation error experienced.", + "type": "string" + } + }, + "id": "FolderOperationError" + }, + "OrgPolicy": { + "id": "OrgPolicy", + "description": "Defines a Cloud Organization `Policy` which is used to specify `Constraints`\nfor configurations of Cloud Platform resources.", + "type": "object", + "properties": { + "updateTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. Default version is 0;", + "type": "integer" + }, + "restoreDefault": { + "$ref": "RestoreDefault", + "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type." + }, + "listPolicy": { + "$ref": "ListPolicy", + "description": "List of values either allowed or disallowed." + }, + "etag": { + "format": "byte", + "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`.", + "type": "string" + }, + "constraint": { + "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", + "type": "string" + }, + "booleanPolicy": { + "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not.", + "$ref": "BooleanPolicy" } } }, - "operations": { - "methods": { - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^operations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudresourcemanager.operations.get", - "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." + "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" } - } + }, + "id": "BooleanPolicy" }, - "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", - "parameters": { - "name": { - "pattern": "^liens/.+$", - "location": "path", - "description": "The name/identifier of the Lien to delete.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/liens/{liensId}", - "id": "cloudresourcemanager.liens.delete", - "path": "v1/{+name}" + "Lien": { + "properties": { + "parent": { + "description": "A reference to the resource this Lien is attached to. The server will\nvalidate the parent against those for which Liens are supported.\n\nExample: `projects/1234`", + "type": "string" }, - "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`.", - "httpMethod": "GET", - "response": { - "$ref": "ListLiensResponse" - }, - "parameterOrder": [], - "parameters": { - "pageToken": { - "location": "query", - "description": "The `next_page_token` value returned from a previous List request, if any.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of items to return. This is a suggestion for the server.", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "query", - "description": "The name of the resource to list all attached Liens.\nFor example, `projects/1234`.", - "type": "string" - } - }, - "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" + "createTime": { + "type": "string", + "format": "google-datetime", + "description": "The creation time of this Lien." }, - "create": { - "flatPath": "v1/liens", - "path": "v1/liens", - "id": "cloudresourcemanager.liens.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" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Lien" + "name": { + "description": "A system-generated unique identifier for this Lien.\n\nExample: `liens/1234abcd`", + "type": "string" + }, + "reason": { + "type": "string", + "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'" + }, + "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']", + "items": { + "type": "string" }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] + "type": "array" } - } + }, + "id": "Lien", + "description": "A Lien represents an encumbrance on the actions that can be performed on a\nresource.", + "type": "object" } }, - "parameters": { - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "default": "true", - "type": "boolean", - "location": "query", - "description": "Pretty-print response." - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "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" - ] + "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": { + "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" + } + } } }, - "version": "v1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", - "basePath": "", - "revision": "20170712", - "documentationLink": "https://cloud.google.com/resource-manager", - "id": "cloudresourcemanager:v1", - "discoveryVersion": "v1" + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudresourcemanager", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Google Cloud Resource Manager API" } diff --git a/DiscoveryJson/cloudresourcemanager_v1beta1.json b/DiscoveryJson/cloudresourcemanager_v1beta1.json index 7ad33a2aae..f3d67317f6 100644 --- a/DiscoveryJson/cloudresourcemanager_v1beta1.json +++ b/DiscoveryJson/cloudresourcemanager_v1beta1.json @@ -1,4 +1,19 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudresourcemanager", "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "Google Cloud Resource Manager API", @@ -6,35 +21,87 @@ "resources": { "projects": { "methods": { + "testIamPermissions": { + "id": "cloudresourcemanager.projects.testIamPermissions", + "path": "v1beta1/projects/{resource}:testIamPermissions", + "description": "Returns permissions that a caller has on the specified Project.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "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.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1beta1/projects/{resource}:testIamPermissions" + }, + "delete": { + "path": "v1beta1/projects/{projectId}", + "id": "cloudresourcemanager.projects.delete", + "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project.", + "httpMethod": "DELETE", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectId}" + }, "list": { "description": "Lists Projects that are visible to the user and satisfy the\nspecified filter. This method returns Projects in an unspecified order.\nNew Projects do not necessarily appear at the end of the list.", "httpMethod": "GET", + "parameterOrder": [], "response": { "$ref": "ListProjectsResponse" }, - "parameterOrder": [], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n+ `name`\n+ `id`\n+ \u003ccode\u003elabels.\u003cem\u003ekey\u003c/em\u003e\u003c/code\u003e where *key* is the name of a label\n\nSome examples of using labels as filters:\n\n|Filter|Description|\n|------|-----------|\n|name:how*|The project's name starts with \"how\".|\n|name:Howl|The project's name is `Howl` or `howl`.|\n|name:HOWL|Equivalent to above.|\n|NAME:howl|Equivalent to above.|\n|labels.color:*|The project has the label `color`.|\n|labels.color:red|The project's label `color` has the value `red`.|\n|labels.color:red labels.size:big|The project's label `color` has the value `red` and its label `size` has the value `big`.\n\nIf you specify a filter that has both `parent.type` and `parent.id`, then\nthe `resourcemanager.projects.list` permission is checked on the parent.\nIf the user has this permission, all projects under the parent will be\nreturned after remaining filters have been applied. If the user lacks this\npermission, then all projects for which the user has the\n`resourcemanager.projects.get` permission will be returned after remaining\nfilters have been applied. If no filter is specified, the call will return\nprojects for which the user has `resourcemanager.projects.get` permissions.\n\nOptional.", - "type": "string" - }, "pageToken": { - "location": "query", "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "type": "integer", - "location": "query", "format": "int32", - "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." + "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.", + "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" } }, - "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" @@ -45,52 +112,54 @@ }, "parameterOrder": [], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "useLegacyStack": { - "location": "query", "description": "A safety hatch to opt out of the new reliable project creation process.", - "type": "boolean" + "type": "boolean", + "location": "query" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta1/projects", "id": "cloudresourcemanager.projects.create", "path": "v1beta1/projects", + "description": "Creates a Project resource.\n\nInitially, the Project resource is owned by its creator exclusively.\nThe creator can later grant permission to others to read or update the\nProject.\n\nSeveral APIs are activated automatically for the Project, including\nGoogle Cloud Storage.", "request": { "$ref": "Project" - }, - "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." + } }, "setIamPolicy": { + "request": { + "$ref": "SetIamPolicyRequest" + }, + "description": "Sets the IAM access control policy for the specified Project. Replaces\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+ Calling this method requires enabling the App Engine Admin API.\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.", + "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.", "type": "string", "required": true, - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field." + "location": "path" } }, "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. Replaces\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+ Calling this method requires enabling the App Engine Admin API.\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.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - } + "path": "v1beta1/projects/{resource}:setIamPolicy" }, "getIamPolicy": { + "path": "v1beta1/projects/{resource}:getIamPolicy", + "id": "cloudresourcemanager.projects.getIamPolicy", "request": { "$ref": "GetIamPolicyRequest" }, @@ -114,22 +183,19 @@ "required": true } }, - "flatPath": "v1beta1/projects/{resource}:getIamPolicy", - "path": "v1beta1/projects/{resource}:getIamPolicy", - "id": "cloudresourcemanager.projects.getIamPolicy" + "flatPath": "v1beta1/projects/{resource}:getIamPolicy" }, "get": { - "httpMethod": "GET", - "parameterOrder": [ - "projectId" - ], + "id": "cloudresourcemanager.projects.get", + "path": "v1beta1/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.", "response": { "$ref": "Project" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "parameterOrder": [ + "projectId" ], + "httpMethod": "GET", "parameters": { "projectId": { "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", @@ -138,12 +204,24 @@ "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." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1beta1/projects/{projectId}" }, "undelete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", + "type": "string", + "required": true + } + }, "flatPath": "v1beta1/projects/{projectId}:undelete", "id": "cloudresourcemanager.projects.undelete", "path": "v1beta1/projects/{projectId}:undelete", @@ -157,24 +235,13 @@ "parameterOrder": [ "projectId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "The project ID (for example, `foo-bar-123`).\n\nRequired." - } - } + "httpMethod": "POST" }, "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": "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": "Project" }, @@ -182,33 +249,26 @@ "projectId" ], "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "projectId": { + "location": "path", "description": "The project ID (for example, `my-project-123`).\n\nRequired.", "type": "string", - "required": true, - "location": "path" + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta1/projects/{projectId}", "id": "cloudresourcemanager.projects.update", "path": "v1beta1/projects/{projectId}" }, "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "httpMethod": "POST", "parameters": { "projectId": { "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", @@ -217,24 +277,42 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "flatPath": "v1beta1/projects/{projectId}:getAncestry", "id": "cloudresourcemanager.projects.getAncestry", - "path": "v1beta1/projects/{projectId}:getAncestry" - }, - "testIamPermissions": { + "path": "v1beta1/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.", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "GetAncestryResponse" }, "parameterOrder": [ - "resource" + "projectId" ], + "httpMethod": "POST" + } + } + }, + "organizations": { + "methods": { + "testIamPermissions": { + "path": "v1beta1/{+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\".", + "request": { + "$ref": "TestIamPermissionsRequest" + }, "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "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.", "type": "string", @@ -245,57 +323,53 @@ "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/organizations/{organizationsId}:testIamPermissions" }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "projectId": { - "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", - "type": "string", - "required": true, - "location": "path" - } - }, + "list": { "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": "v1beta1/projects/{projectId}", - "path": "v1beta1/projects/{projectId}", - "id": "cloudresourcemanager.projects.delete", - "description": "Marks the Project identified by the specified\n`project_id` (for example, `my-project-123`) for deletion.\nThis method will only affect the Project if the following criteria are met:\n\n+ The Project does not have a billing account associated with it.\n+ The Project has a lifecycle state of\nACTIVE.\n\nThis method changes the Project's lifecycle state from\nACTIVE\nto DELETE_REQUESTED.\nThe deletion starts at an unspecified time, at which point the project is\nno longer accessible.\n\nUntil the deletion completes, you can check the lifecycle state\nchecked by retrieving the Project with GetProject,\nand the Project remains visible to ListProjects.\nHowever, you cannot update the project.\n\nAfter the deletion completes, the Project is not retrievable by\nthe GetProject and\nListProjects methods.\n\nThe caller must have modify permissions for this Project." - } - } - }, - "organizations": { - "methods": { + "parameters": { + "pageToken": { + "location": "query", + "description": "A pagination token returned from a previous call to `ListOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "type": "integer" + }, + "filter": { + "description": "An optional query string used to filter the Organizations to return in\nthe response. Filter rules are case-insensitive.\n\n\nOrganizations may be filtered by `owner.directoryCustomerId` or by\n`domain`, where the domain is a Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta1/organizations", + "path": "v1beta1/organizations", + "id": "cloudresourcemanager.organizations.list", + "description": "Lists Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the list.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListOrganizationsResponse" + } + }, "setIamPolicy": { - "flatPath": "v1beta1/organizations/{organizationsId}:setIamPolicy", - "id": "cloudresourcemanager.organizations.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", "request": { "$ref": "SetIamPolicyRequest" }, "description": "Sets the access control policy on an Organization resource. Replaces any\nexisting policy. The `resource` field should be the organization's resource\nname, e.g. \"organizations/123\".", - "response": { - "$ref": "Policy" - }, + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "response": { + "$ref": "Policy" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -307,23 +381,30 @@ "type": "string", "required": true } - } + }, + "flatPath": "v1beta1/organizations/{organizationsId}:setIamPolicy", + "path": "v1beta1/{+resource}:setIamPolicy", + "id": "cloudresourcemanager.organizations.setIamPolicy" }, "getIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], + "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": { - "type": "string", - "required": true, "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.", + "type": "string", + "required": true } }, "scopes": [ @@ -331,33 +412,22 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "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" - } + "path": "v1beta1/{+resource}:getIamPolicy" }, "get": { - "response": { - "$ref": "Organization" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "parameters": { + "organizationId": { + "description": "The id of the Organization resource to fetch.\nThis field is deprecated and will be removed in v1. Use name instead.", + "type": "string", + "location": "query" + }, "name": { + "pattern": "^organizations/[^/]+$", + "location": "path", "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", "type": "string", - "required": true, - "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" + "required": true } }, "scopes": [ @@ -365,11 +435,20 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1beta1/organizations/{organizationsId}", - "id": "cloudresourcemanager.organizations.get", "path": "v1beta1/{+name}", - "description": "Fetches an Organization resource identified by the specified resource name." + "id": "cloudresourcemanager.organizations.get", + "description": "Fetches an Organization resource identified by the specified resource name.", + "httpMethod": "GET", + "response": { + "$ref": "Organization" + }, + "parameterOrder": [ + "name" + ] }, "update": { + "id": "cloudresourcemanager.organizations.update", + "path": "v1beta1/{+name}", "request": { "$ref": "Organization" }, @@ -386,118 +465,54 @@ ], "parameters": { "name": { - "pattern": "^organizations/[^/]+$", - "location": "path", "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", "type": "string", - "required": true - } - }, - "flatPath": "v1beta1/organizations/{organizationsId}", - "id": "cloudresourcemanager.organizations.update", - "path": "v1beta1/{+name}" - }, - "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.", - "type": "string", "required": true, - "pattern": "^organizations/[^/]+$" - } - }, - "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", - "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\".", - "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "list": { - "flatPath": "v1beta1/organizations", - "id": "cloudresourcemanager.organizations.list", - "path": "v1beta1/organizations", - "description": "Lists Organization resources that are visible to the user and satisfy\nthe specified filter. This method returns Organizations in an unspecified\norder. New Organizations do not necessarily appear at the end of the list.", - "response": { - "$ref": "ListOrganizationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "A pagination token returned from a previous call to `ListOrganizations`\nthat indicates from where listing should continue.\nThis field is optional.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", - "type": "integer" - }, - "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 Google for Work domain, for example:\n\n|Filter|Description|\n|------|-----------|\n|owner.directorycustomerid:123456789|Organizations with `owner.directory_customer_id` equal to `123456789`.|\n|domain:google.com|Organizations corresponding to the domain `google.com`.|\n\nThis field is optional." + "pattern": "^organizations/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ] + "flatPath": "v1beta1/organizations/{organizationsId}" } } } }, "parameters": { + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean", + "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", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] + "location": "query" }, "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", "description": "Data format for response.", "default": "json", "enum": [ @@ -505,7 +520,13 @@ "media", "proto" ], - "type": "string" + "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", @@ -513,9 +534,9 @@ "type": "string" }, "access_token": { - "type": "string", "location": "query", - "description": "OAuth access token." + "description": "OAuth access token.", + "type": "string" }, "quotaUser": { "location": "query", @@ -529,9 +550,9 @@ "type": "boolean" }, "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.", @@ -542,63 +563,195 @@ "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" } }, "version": "v1beta1", "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", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "basePath": "", - "id": "cloudresourcemanager:v1beta1", + "revision": "20170717", "documentationLink": "https://cloud.google.com/resource-manager", - "revision": "20170712", + "id": "cloudresourcemanager:v1beta1", "discoveryVersion": "v1", "schemas": { - "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.", + "Binding": { + "description": "Associates `members` with a `role`.", "type": "object", "properties": { - "exemptedMembers": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { "type": "string" }, - "type": "array", - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members." + "type": "array" }, - "logType": { - "type": "string", - "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" - ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "description": "The log type that this config enables." + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "AuditLogConfig" + "id": "Binding" }, - "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.", + "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": { - "projects": { - "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", - "items": { - "$ref": "Project" + "properties": {}, + "id": "Empty" + }, + "UndeleteProjectRequest": { + "id": "UndeleteProjectRequest", + "description": "The request sent to the UndeleteProject\nmethod.", + "type": "object", + "properties": {} + }, + "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": { + "displayName": { + "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", + "type": "string" + }, + "creationTime": { + "format": "google-datetime", + "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", + "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" + }, + "name": { + "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", + "type": "string" + }, + "organizationId": { + "description": "An immutable id for the Organization that is assigned on creation. This\nshould be omitted when creating a new Organization.\nThis field is read-only.\nThis field is deprecated and will be removed in v1. Use name instead.", + "type": "string" + }, + "lifecycleState": { + "description": "The organization's current lifecycle state. Assigned by the server.\n@OutputOnly", + "type": "string", + "enumDescriptions": [ + "Unspecified state. This is only useful for distinguishing unset values.", + "The normal and active state.", + "The organization has been marked for deletion by the user." + ], + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ] + } + } + }, + "ProjectCreationStatus": { + "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", + "properties": { + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + }, + "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" + }, + "createTime": { + "format": "google-datetime", + "description": "Creation time of the project creation workflow.", + "type": "string" + } + } + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "TestIamPermissionsResponse": { + "id": "TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "GetAncestryResponse": { + "id": "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.", + "items": { + "$ref": "Ancestor" + }, + "type": "array" + } + } + }, + "OrganizationOwner": { + "id": "OrganizationOwner", + "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", + "type": "object", + "properties": { + "directoryCustomerId": { + "description": "The Google for Work customer id used in the Directory API.", + "type": "string" + } + } + }, + "AuditLogConfig": { + "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", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "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" + } + } + }, + "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": { + "description": "The list of Projects that matched the list filter. This list can\nbe paginated.", + "items": { + "$ref": "Project" }, "type": "array" }, @@ -606,8 +759,7 @@ "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.", @@ -616,16 +768,19 @@ "id": "GetAncestryRequest" }, "Project": { + "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", "properties": { + "name": { + "description": "The user-assigned display name of the Project.\nIt must be 4 to 30 characters.\nAllowed characters are: lowercase and uppercase letters, numbers,\nhyphen, single-quote, double-quote, space, and exclamation point.\n\nExample: \u003ccode\u003eMy Project\u003c/code\u003e\nRead-write.", + "type": "string" + }, + "projectId": { + "description": "The unique, user-assigned ID of the Project.\nIt must be 6 to 30 lowercase letters, digits, or hyphens.\nIt must start with a letter.\nTrailing hyphens are prohibited.\n\nExample: \u003ccode\u003etokyo-rain-123\u003c/code\u003e\nRead-only after creation.", + "type": "string" + }, "lifecycleState": { - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED", - "DELETE_IN_PROGRESS" - ], "description": "The Project lifecycle state.\n\nRead-only.", "type": "string", "enumDescriptions": [ @@ -633,6 +788,12 @@ "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" ] }, "projectNumber": { @@ -655,20 +816,10 @@ "format": "google-datetime", "description": "Creation time.\n\nRead-only.", "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" } - }, - "id": "Project" + } }, "TestIamPermissionsRequest": { - "id": "TestIamPermissionsRequest", "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { @@ -679,60 +830,27 @@ }, "type": "array" } - } - }, - "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" + "id": "TestIamPermissionsRequest" }, "FolderOperation": { + "id": "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", - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ] + "type": "string" }, "sourceParent": { "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", @@ -746,18 +864,13 @@ "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" + } }, "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" - }, "version": { "format": "int32", "description": "Version of the `Policy`. The default version is 0.", @@ -776,44 +889,84 @@ "$ref": "Binding" }, "type": "array" + }, + "etag": { + "format": "byte", + "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.", + "type": "string" + } + } + }, + "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": "Policy" + "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": { - "type": "string", - "description": "Required field representing the resource type this id is for.\nAt present, the valid types are \"project\" and \"organization\"." - }, "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\" and \"organization\".", + "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." + "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\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", "type": "object", "properties": { - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - }, "auditLogConfigs": { "description": "The configuration for logging of each type of permission.\nNext ID: 4", "items": { "$ref": "AuditLogConfig" }, "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" } }, - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + "id": "AuditConfig" }, "Ancestor": { + "id": "Ancestor", "description": "Identifying information for a single ancestor of a project.", "type": "object", "properties": { @@ -821,34 +974,15 @@ "description": "Resource id of the ancestor.", "$ref": "ResourceId" } - }, - "id": "Ancestor" - }, - "ListOrganizationsResponse": { - "type": "object", - "properties": { - "organizations": { - "description": "The list of Organizations that matched the list query, possibly paginated.", - "items": { - "$ref": "Organization" - }, - "type": "array" - }, - "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", - "description": "The response returned from the `ListOrganizations` 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" + "$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": { "format": "google-fieldmask", @@ -858,163 +992,29 @@ }, "id": "SetIamPolicyRequest" }, - "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", - "items": { - "type": "string" - }, - "type": "array" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "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 `{}`.", + "ListOrganizationsResponse": { + "description": "The response returned from the `ListOrganizations` method.", "type": "object", - "properties": {}, - "id": "Empty" - }, - "Organization": { "properties": { - "displayName": { - "description": "A friendly string to be used to refer to the Organization in the UI.\nAssigned by the server, set to the primary domain of the G Suite\ncustomer that owns the organization.\n@OutputOnly", - "type": "string" - }, - "creationTime": { - "format": "google-datetime", - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "type": "string" - }, - "owner": { - "$ref": "OrganizationOwner", - "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required." - }, - "name": { - "description": "Output Only. The resource name of the organization. This is the\norganization's relative path in the API. Its format is\n\"organizations/[organization_id]\". For example, \"organizations/1234\".", - "type": "string" - }, - "organizationId": { - "description": "An immutable id for the Organization that is assigned on creation. This\nshould be omitted when creating a new Organization.\nThis field is read-only.\nThis field is deprecated and will be removed in v1. Use name instead.", + "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" }, - "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." - ] - } - }, - "id": "Organization", - "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", - "type": "object" - }, - "UndeleteProjectRequest": { - "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object", - "properties": {}, - "id": "UndeleteProjectRequest" - }, - "ProjectCreationStatus": { - "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", - "type": "object", - "properties": { - "ready": { - "description": "True if the project creation process is complete.", - "type": "boolean" - }, - "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" - }, - "createTime": { - "type": "string", - "format": "google-datetime", - "description": "Creation time of the project creation workflow." - } - }, - "id": "ProjectCreationStatus" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsResponse" - }, - "GetIamPolicyRequest": { - "properties": {}, - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object" - }, - "OrganizationOwner": { - "description": "The entity that owns an Organization. The lifetime of the Organization and\nall of its descendants are bound to the `OrganizationOwner`. If the\n`OrganizationOwner` is deleted, the Organization and all its descendants will\nbe deleted.", - "type": "object", - "properties": { - "directoryCustomerId": { - "description": "The Google for Work 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.", + "organizations": { + "description": "The list of Organizations that matched the list query, possibly paginated.", "items": { - "$ref": "Ancestor" + "$ref": "Organization" }, "type": "array" } }, - "id": "GetAncestryResponse" + "id": "ListOrganizationsResponse" } }, + "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 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" + "canonicalName": "Cloud Resource Manager" } diff --git a/DiscoveryJson/cloudresourcemanager_v2beta1.json b/DiscoveryJson/cloudresourcemanager_v2beta1.json index 8bce2d4c5a..0317800b3a 100644 --- a/DiscoveryJson/cloudresourcemanager_v2beta1.json +++ b/DiscoveryJson/cloudresourcemanager_v2beta1.json @@ -1,451 +1,255 @@ { - "ownerDomain": "google.com", - "name": "cloudresourcemanager", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Cloud Resource Manager API", - "ownerName": "Google", - "resources": { - "folders": { - "methods": { - "create": { - "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", - "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+ 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.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - } - }, - "setIamPolicy": { - "path": "v2beta1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.folders.setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on a Folder, replacing any existing policy.\nThe `resource` field should be the Folder's resource name, e.g.\n\"folders/1234\".\nThe caller must have `resourcemanager.folders.setIamPolicy` permission\non the identified folder.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "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.", - "type": "string", - "required": true, - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy" - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "documentationLink": "https://cloud.google.com/resource-manager", + "revision": "20170717", + "id": "cloudresourcemanager:v2beta1", + "discoveryVersion": "v1", + "schemas": { + "Folder": { + "properties": { + "lifecycleState": { + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" ], - "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.", - "type": "string", - "required": true - } - }, - "flatPath": "v2beta1/folders/{foldersId}:getIamPolicy", - "path": "v2beta1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.folders.getIamPolicy" + "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\n[DeleteFolder] and [UndeleteFolder].", + "type": "string", + "enumDescriptions": [ + "Unspecified state.", + "The normal and active state.", + "The folder has been marked for deletion by the user." + ] }, - "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`.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchFoldersResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": {}, - "flatPath": "v2beta1/folders:search", - "path": "v2beta1/folders:search", - "id": "cloudresourcemanager.folders.search" + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "type": "string" }, - "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+ The 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": { - "name": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", - "type": "string", - "required": true - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Fields to be updated.\nOnly the `display_name` can be updated.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}", - "id": "cloudresourcemanager.folders.patch", - "path": "v2beta1/{+name}" + "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" }, - "get": { - "parameters": { - "name": { - "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", - "type": "string", - "required": true, - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2beta1/folders/{foldersId}", - "id": "cloudresourcemanager.folders.get", - "path": "v2beta1/{+name}", - "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" + "parent": { + "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via [MoveFolders].", + "type": "string" }, - "undelete": { - "path": "v2beta1/{+name}:undelete", - "id": "cloudresourcemanager.folders.undelete", - "request": { - "$ref": "UndeleteFolderRequest" - }, - "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the [DELETE_REQUESTED] state.\nIn order to succeed, the Folder's parent must be in the [ACTIVE] state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\n[CreateFolder] 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}`.", - "type": "string", - "required": true - } - }, - "flatPath": "v2beta1/folders/{foldersId}:undelete" + "createTime": { + "format": "google-datetime", + "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", + "type": "string" + } + }, + "id": "Folder", + "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "type": "object" + }, + "ProjectCreationStatus": { + "description": "A status object which is used as the `metadata` field for the Operation\nreturned by CreateProject. It provides insight for when significant phases of\nProject creation have completed.", + "type": "object", + "properties": { + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" }, - "move": { - "id": "cloudresourcemanager.folders.move", - "path": "v2beta1/{+name}:move", - "request": { - "$ref": "MoveFolderRequest" - }, - "description": "Moves a Folder under a new resource parent.\nReturns an Operation which can be used to track the progress of the\nfolder move workflow.\nUpon success the Operation.response field will be populated with the\nmoved Folder.\nUpon failure, a FolderOperationError categorizing the failure cause will\nbe returned - if the failure occurs synchronously then the\nFolderOperationError will be returned via the Status.details field\nand if it occurs asynchronously then the FolderOperation will be returned\nvia the the Operation.error field.\nIn addition, the Operation.metadata field will be populated with a\nFolderOperation message as an aid to stateless clients.\nFolder moves will be rejected if they violate either the naming, height\nor fanout constraints described in the [CreateFolder] documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", - "response": { - "$ref": "Operation" - }, - "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 move.\nMust be of the form folders/{folder_id}", - "type": "string", - "required": true - } - }, - "flatPath": "v2beta1/folders/{foldersId}:move" + "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" }, - "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" + "createTime": { + "format": "google-datetime", + "description": "Creation time of the project creation workflow.", + "type": "string" + } + }, + "id": "ProjectCreationStatus" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" }, - "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.", - "type": "string", - "required": true - } + "type": "array" + } + }, + "id": "TestIamPermissionsResponse" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "UndeleteFolderRequest": { + "properties": {}, + "id": "UndeleteFolderRequest", + "description": "The UndeleteFolder request message.", + "type": "object" + }, + "AuditLogConfig": { + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions", - "path": "v2beta1/{+resource}:testIamPermissions", - "id": "cloudresourcemanager.folders.testIamPermissions" + "type": "array" }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "logType": { + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" ], - "parameters": { - "name": { - "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", - "type": "string", - "required": true, - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/folders/{foldersId}", - "path": "v2beta1/{+name}", - "id": "cloudresourcemanager.folders.delete", - "description": "Requests deletion of a Folder. The Folder is moved into the\n[DELETE_REQUESTED] state immediately, and is deleted approximately 30 days\nlater. This method may only be called on an empty Folder in the [ACTIVE]\nstate, where a Folder is empty if it doesn't contain any Folders or\nProjects in the [ACTIVE] state.\nThe caller must have `resourcemanager.folders.delete` permission on the\nidentified folder.", - "httpMethod": "DELETE", - "response": { - "$ref": "Folder" - }, - "parameterOrder": [ - "name" + "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" ] - }, - "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.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListFoldersResponse" - }, - "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 [DELETE_REQUESTED} state should\nbe returned.", - "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" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The maximum number of Folders to return in the response.\nThis field is optional.", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2beta1/folders", - "path": "v2beta1/folders", - "id": "cloudresourcemanager.folders.list" } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "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" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "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).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestIamPermissionsRequest" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "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" }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "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." + ] + }, + "sourceParent": { + "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", + "type": "string" + }, + "displayName": { + "description": "The display name of the folder.", + "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" }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - } - }, - "version": "v2beta1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", - "kind": "discovery#restDescription", - "servicePath": "", - "basePath": "", - "revision": "20170712", - "documentationLink": "https://cloud.google.com/resource-manager", - "id": "cloudresourcemanager:v2beta1", - "discoveryVersion": "v1", - "schemas": { - "AuditConfig": { - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "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.", + "etag": { + "format": "byte", + "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.", "type": "string" }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", "items": { - "$ref": "AuditLogConfig" + "$ref": "AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" }, "type": "array" } - } + }, + "id": "Policy" }, "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": { @@ -458,50 +262,58 @@ "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" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "type": "object", + "properties": { + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" }, - "response": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" }, - "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", - "type": "object" + "type": "array" } }, - "id": "Operation" + "id": "AuditConfig" }, "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.", "items": { "$ref": "Folder" }, "type": "array" - }, - "nextPageToken": { - "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates from where listing should continue.\nThis field is optional.", - "type": "string" } }, "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" + "id": "MoveFolderRequest", + "description": "The MoveFolder request message.", + "type": "object" }, "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", "properties": { "updateMask": { "format": "google-fieldmask", @@ -509,39 +321,34 @@ "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" + "$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" + "id": "SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method.", + "type": "object" }, "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.", "items": { "$ref": "Folder" }, "type": "array" - }, - "nextPageToken": { - "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where searching should continue.\nThis field is optional.", - "type": "string" } }, "id": "SearchFoldersResponse" }, "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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" @@ -556,9 +363,16 @@ "type": "object" }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } }, - "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" }, "Binding": { "description": "Associates `members` with a `role`.", @@ -579,7 +393,6 @@ "id": "Binding" }, "SearchFoldersRequest": { - "id": "SearchFoldersRequest", "description": "The request message for searching folders.", "type": "object", "properties": { @@ -596,253 +409,440 @@ "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|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\nparent is \"folders/123\".|", "type": "string" } - } - }, - "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" - }, - "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" - }, - "createTime": { - "format": "google-datetime", - "description": "Creation time of the project creation workflow.", - "type": "string" - } }, - "id": "ProjectCreationStatus" - }, - "Folder": { - "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", - "type": "object", - "properties": { - "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 [MoveFolders].", - "type": "string" - }, - "createTime": { - "format": "google-datetime", - "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", - "type": "string" + "id": "SearchFoldersRequest" + } + }, + "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 Resource Manager", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" }, - "lifecycleState": { - "enumDescriptions": [ - "Unspecified state.", - "The normal and active state.", - "The folder has been marked for deletion by the user." + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudresourcemanager", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Google Cloud Resource Manager API", + "ownerName": "Google", + "resources": { + "folders": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Folder" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" + "flatPath": "v2beta1/folders/{foldersId}", + "path": "v2beta1/{+name}", + "id": "cloudresourcemanager.folders.delete", + "description": "Requests deletion of a Folder. The Folder is moved into the\n[DELETE_REQUESTED] state immediately, and is deleted approximately 30 days\nlater. This method may only be called on an empty Folder in the [ACTIVE]\nstate, where a Folder is empty if it doesn't contain any Folders or\nProjects in the [ACTIVE] 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": { + "description": "The resource name of the Organization or Folder whose Folders are\nbeing listed.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.\nAccess to this method is controlled by checking the\n`resourcemanager.folders.list` permission on the `parent`.", + "type": "string", + "location": "query" + }, + "showDeleted": { + "description": "Controls whether Folders in the [DELETE_REQUESTED} state should\nbe returned.", + "type": "boolean", + "location": "query" + }, + "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" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The maximum number of Folders to return in the response.\nThis field is optional.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\n[DeleteFolder] and [UndeleteFolder].", - "type": "string" - } - }, - "id": "Folder" - }, - "TestIamPermissionsResponse": { - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" + "flatPath": "v2beta1/folders", + "id": "cloudresourcemanager.folders.list", + "path": "v2beta1/folders" + }, + "create": { + "id": "cloudresourcemanager.folders.create", + "path": "v2beta1/folders", + "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+ The Folder's display_name must be distinct from all other Folder's that\nshare its parent.\n+ The addition of the Folder must not cause the active Folder hierarchy\nto exceed a height of 4. Note, the full active + deleted Folder hierarchy\nis allowed to reach a height of 8; this provides additional headroom when\nmoving folders that contain deleted folders.\n+ The addition of the Folder must not cause the total number of Folders\nunder its parent to exceed 100.\n\nIf the operation fails due to a folder constraint violation,\na PreconditionFailure explaining the violation will be returned.\nIf the failure occurs synchronously then the PreconditionFailure\nwill be returned via the Status.details field and if it occurs\nasynchronously then the PreconditionFailure will be returned\nvia the the Operation.error field.\n\nThe caller must have `resourcemanager.folders.create` permission on the\nidentified parent.", + "request": { + "$ref": "Folder" }, - "type": "array" - } - } - }, - "GetIamPolicyRequest": { - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {} - }, - "UndeleteFolderRequest": { - "id": "UndeleteFolderRequest", - "description": "The UndeleteFolder request message.", - "type": "object", - "properties": {} - }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.", - "type": "object", - "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "items": { - "type": "string" + "response": { + "$ref": "Operation" }, - "type": "array" + "parameterOrder": [], + "httpMethod": "POST", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/folders" }, - "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" + "setIamPolicy": { + "path": "v2beta1/{+resource}:setIamPolicy", + "id": "cloudresourcemanager.folders.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": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" + "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.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "description": "The log type that this config enables.", - "type": "string" - } - }, - "id": "AuditLogConfig" - }, - "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).", - "items": { - "type": "string" + "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy" + }, + "getIamPolicy": { + "path": "v2beta1/{+resource}:getIamPolicy", + "id": "cloudresourcemanager.folders.getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" }, - "type": "array" - } - }, - "id": "TestIamPermissionsRequest" - }, - "FolderOperationError": { - "id": "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." + "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.", + "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" + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "The type of operation error experienced.", - "type": "string" - } - } - }, - "FolderOperation": { - "description": "Metadata describing a long running folder operation", - "type": "object", - "properties": { - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/folders/{foldersId}:getIamPolicy" }, - "displayName": { - "description": "The display name of the folder.", - "type": "string" + "search": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "SearchFoldersResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v2beta1/folders:search", + "path": "v2beta1/folders:search", + "id": "cloudresourcemanager.folders.search", + "description": "Search for folders that match specific filter criteria.\nSearch provides an eventually consistent view of the folders a user has\naccess to which meet the specified filter criteria.\n\nThis will only return folders on which the caller has the\npermission `resourcemanager.folders.get`.", + "request": { + "$ref": "SearchFoldersRequest" + } }, - "destinationParent": { - "description": "The resource name of the folder or organization we are either creating\nthe folder under or moving the folder to.", - "type": "string" + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Folder" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "description": "Fields to be updated.\nOnly the `display_name` can be updated.", + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/folders/{foldersId}", + "path": "v2beta1/{+name}", + "id": "cloudresourcemanager.folders.patch", + "request": { + "$ref": "Folder" + }, + "description": "Updates a Folder, changing its display_name.\nChanges to the folder display_name will be rejected if they violate either\nthe display_name formatting rules or naming constraints described in\nthe [CreateFolder] documentation.\n+ The 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." }, - "operationType": { - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." + "get": { + "path": "v2beta1/{+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.", + "httpMethod": "GET", + "response": { + "$ref": "Folder" + }, + "parameterOrder": [ + "name" ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "The type of this operation.", - "type": "string" - } - }, - "id": "FolderOperation" - }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" + "parameters": { + "name": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", + "type": "string", + "required": true + } + }, + "flatPath": "v2beta1/folders/{foldersId}" }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" + "undelete": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Folder" }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/folders/{foldersId}:undelete", + "path": "v2beta1/{+name}:undelete", + "id": "cloudresourcemanager.folders.undelete", + "request": { + "$ref": "UndeleteFolderRequest" + }, + "description": "Cancels the deletion request for a Folder. This method may only be\ncalled on a Folder in the [DELETE_REQUESTED] state.\nIn order to succeed, the Folder's parent must be in the [ACTIVE] state.\nIn addition, reintroducing the folder into the tree must not violate\nfolder naming, height and fanout constraints described in the\n[CreateFolder] documentation.\nThe caller must have `resourcemanager.folders.undelete` permission on the\nidentified folder." }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" + "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 [CreateFolder] documentation.\nThe caller must have `resourcemanager.folders.move` permission on the\nfolder's current and proposed new parent.", + "request": { + "$ref": "MoveFolderRequest" }, - "type": "array" + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/folders/{foldersId}:move" }, - "etag": { - "format": "byte", - "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.", - "type": "string" + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true, + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions", + "id": "cloudresourcemanager.folders.testIamPermissions", + "path": "v2beta1/{+resource}: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" + } } - }, - "id": "Policy" + } } }, - "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" - } - } + "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.", + "default": "true", + "type": "boolean" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json" + }, + "access_token": { + "location": "query", + "description": "OAuth access token.", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string", + "location": "query" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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" } }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/" + "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": "" } diff --git a/DiscoveryJson/cloudtrace_v1.json b/DiscoveryJson/cloudtrace_v1.json index 04d06d8927..85f4567556 100644 --- a/DiscoveryJson/cloudtrace_v1.json +++ b/DiscoveryJson/cloudtrace_v1.json @@ -1,140 +1,4 @@ { - "schemas": { - "Traces": { - "description": "List of new or updated traces.", - "type": "object", - "properties": { - "traces": { - "description": "List of traces.", - "items": { - "$ref": "Trace" - }, - "type": "array" - } - }, - "id": "Traces" - }, - "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": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Collection of labels associated with the span. Label keys must be less than\n128 bytes. Label values must be less than 16 kilobytes (10MB for\n`/stacktrace` values).\n\nSome predefined label keys exist, or you may create your own. When creating\nyour own, we recommend the following formats:\n\n* `/category/product/key` for agents of well-known products (e.g.\n `/db/mongodb/read_size`).\n* `short_host/path/key` for domain-specific keys (e.g.\n `foo.com/myproduct/bar`)\n\nPredefined labels include:\n\n* `/agent`\n* `/component`\n* `/error/message`\n* `/error/name`\n* `/http/client_city`\n* `/http/client_country`\n* `/http/client_protocol`\n* `/http/client_region`\n* `/http/host`\n* `/http/method`\n* `/http/redirected_url`\n* `/http/request/size`\n* `/http/response/size`\n* `/http/status_code`\n* `/http/url`\n* `/http/user_agent`\n* `/pid`\n* `/stacktrace`\n* `/tid`", - "type": "object" - }, - "name": { - "description": "Name of the span. Must be less than 128 bytes. The span name is sanitized\nand displayed in the Stackdriver Trace tool in the\n{% dynamic print site_values.console_name %}.\nThe name may be a method name or some other per-call site name.\nFor the same executable and the same call point, a best practice is\nto use a consistent name, which makes it easier to correlate\ncross-trace spans.", - "type": "string" - }, - "spanId": { - "format": "uint64", - "description": "Identifier for the span. Must be a 64-bit integer other than 0 and\nunique within a trace.", - "type": "string" - }, - "parentSpanId": { - "format": "uint64", - "description": "ID of the parent span, if any. Optional.", - "type": "string" - }, - "endTime": { - "type": "string", - "format": "google-datetime", - "description": "End time of the span in nanoseconds from the UNIX epoch." - }, - "startTime": { - "format": "google-datetime", - "description": "Start time of the span in nanoseconds from the UNIX epoch.", - "type": "string" - }, - "kind": { - "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.", - "type": "string" - } - }, - "id": "TraceSpan" - }, - "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" - }, - "ListTracesResponse": { - "description": "The response message for the `ListTraces` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If defined, indicates that there are more traces that match the request\nand that this value should be passed to the next request to continue\nretrieving additional traces.", - "type": "string" - }, - "traces": { - "description": "List of trace records returned.", - "items": { - "$ref": "Trace" - }, - "type": "array" - } - }, - "id": "ListTracesResponse" - }, - "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": { - "spans": { - "description": "Collection of spans in the trace.", - "items": { - "$ref": "TraceSpan" - }, - "type": "array" - }, - "projectId": { - "description": "Project ID of the Cloud project where the trace data is stored.", - "type": "string" - }, - "traceId": { - "description": "Globally unique identifier for the trace. This identifier is a 128-bit\nnumeric value formatted as a 32-byte hex string.", - "type": "string" - } - }, - "id": "Trace" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Cloud Trace", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/trace.readonly": { - "description": "Read Trace data for a project or application" - }, - "https://www.googleapis.com/auth/trace.append": { - "description": "Write Trace data for a project or application" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudtrace.googleapis.com/", "ownerDomain": "google.com", "name": "cloudtrace", "batchPath": "batch", @@ -142,52 +6,21 @@ "ownerName": "Google", "resources": { "projects": { - "methods": { - "patchTraces": { - "httpMethod": "PATCH", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "ID of the Cloud project where the trace data is stored.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "flatPath": "v1/projects/{projectId}/traces", - "path": "v1/projects/{projectId}/traces", - "id": "cloudtrace.projects.patchTraces", - "description": "Sends new traces to Stackdriver Trace or updates existing traces. If the ID\nof a trace that you send matches that of an existing trace, any fields\nin the existing trace and its spans are overwritten by the provided values,\nand any new fields provided are merged with the existing trace data. If the\nID does not match, a new trace is created.", - "request": { - "$ref": "Traces" - } - } - }, "resources": { "traces": { "methods": { "get": { - "response": { - "$ref": "Trace" - }, + "path": "v1/projects/{projectId}/traces/{traceId}", + "id": "cloudtrace.projects.traces.get", + "description": "Gets a single trace by its ID.", + "httpMethod": "GET", "parameterOrder": [ "projectId", "traceId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], + "response": { + "$ref": "Trace" + }, "parameters": { "projectId": { "location": "path", @@ -202,12 +35,14 @@ "location": "path" } }, - "flatPath": "v1/projects/{projectId}/traces/{traceId}", - "id": "cloudtrace.projects.traces.get", - "path": "v1/projects/{projectId}/traces/{traceId}", - "description": "Gets a single trace by its ID." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], + "flatPath": "v1/projects/{projectId}/traces/{traceId}" }, "list": { + "description": "Returns of a list of traces that match the specified filter conditions.", "response": { "$ref": "ListTracesResponse" }, @@ -215,17 +50,21 @@ "projectId" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], "parameters": { "orderBy": { - "type": "string", "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." + "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" }, "projectId": { + "description": "ID of the Cloud project where the trace data is stored.", "type": "string", "required": true, - "location": "path", - "description": "ID of the Cloud project where the trace data is stored." + "location": "path" }, "filter": { "location": "query", @@ -233,21 +72,21 @@ "type": "string" }, "endTime": { + "location": "query", "format": "google-datetime", "description": "End of the time interval (inclusive) during which the trace data was\ncollected from the application.", + "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" }, "startTime": { - "type": "string", - "location": "query", "format": "google-datetime", - "description": "Start of the time interval (inclusive) during which the trace data was\ncollected from the application." - }, - "pageToken": { - "location": "query", - "description": "Token identifying the page of results to return. If provided, use the\nvalue of the `next_page_token` field from a previous request. Optional.", - "type": "string" + "description": "Start of the time interval (inclusive) during which the trace data was\ncollected from the application.", + "type": "string", + "location": "query" }, "pageSize": { "format": "int32", @@ -267,43 +106,100 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], "flatPath": "v1/projects/{projectId}/traces", "id": "cloudtrace.projects.traces.list", - "path": "v1/projects/{projectId}/traces", - "description": "Returns of a list of traces that match the specified filter conditions." + "path": "v1/projects/{projectId}/traces" } } } + }, + "methods": { + "patchTraces": { + "flatPath": "v1/projects/{projectId}/traces", + "path": "v1/projects/{projectId}/traces", + "id": "cloudtrace.projects.patchTraces", + "description": "Sends new traces to Stackdriver Trace or updates existing traces. If the ID\nof a trace that you send matches that of an existing trace, any fields\nin the existing trace and its spans are overwritten by the provided values,\nand any new fields provided are merged with the existing trace data. If the\nID does not match, a new trace is created.", + "request": { + "$ref": "Traces" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "ID of the Cloud project where the trace data is stored.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ] + } } } }, "parameters": { - "upload_protocol": { + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + }, + "key": { + "type": "string", "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." + }, + "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" }, - "prettyPrint": { + "pp": { + "default": "true", + "type": "boolean", + "location": "query", + "description": "Pretty-print response." + }, + "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": { + "type": "string", "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + }, + "prettyPrint": { "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "uploadType": { - "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, "$.xgafv": { + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -313,16 +209,14 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "description": "V1 error format." }, "callback": { + "location": "query", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "alt": { - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -335,49 +229,155 @@ "json", "media", "proto" - ] - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "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://cloudtrace.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Send and retrieve trace data from Stackdriver Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Stackdriver Trace for display, reporting, and analysis.\n", "servicePath": "", + "description": "Send and retrieve trace data from Stackdriver Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Stackdriver Trace for display, reporting, and analysis.\n", + "kind": "discovery#restDescription", "basePath": "", - "revision": "20170711", "documentationLink": "https://cloud.google.com/trace", "id": "cloudtrace:v1", + "revision": "20170711", "discoveryVersion": "v1", - "version_module": "True" + "version_module": "True", + "schemas": { + "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": { + "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" + }, + "spans": { + "description": "Collection of spans in the trace.", + "items": { + "$ref": "TraceSpan" + }, + "type": "array" + }, + "projectId": { + "description": "Project ID of the Cloud project where the trace data is stored.", + "type": "string" + } + }, + "id": "Trace" + }, + "Traces": { + "description": "List of new or updated traces.", + "type": "object", + "properties": { + "traces": { + "description": "List of traces.", + "items": { + "$ref": "Trace" + }, + "type": "array" + } + }, + "id": "Traces" + }, + "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": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Collection of labels associated with the span. Label keys must be less than\n128 bytes. Label values must be less than 16 kilobytes (10MB for\n`/stacktrace` values).\n\nSome predefined label keys exist, or you may create your own. When creating\nyour own, we recommend the following formats:\n\n* `/category/product/key` for agents of well-known products (e.g.\n `/db/mongodb/read_size`).\n* `short_host/path/key` for domain-specific keys (e.g.\n `foo.com/myproduct/bar`)\n\nPredefined labels include:\n\n* `/agent`\n* `/component`\n* `/error/message`\n* `/error/name`\n* `/http/client_city`\n* `/http/client_country`\n* `/http/client_protocol`\n* `/http/client_region`\n* `/http/host`\n* `/http/method`\n* `/http/redirected_url`\n* `/http/request/size`\n* `/http/response/size`\n* `/http/status_code`\n* `/http/url`\n* `/http/user_agent`\n* `/pid`\n* `/stacktrace`\n* `/tid`", + "type": "object" + }, + "name": { + "description": "Name of the span. Must be less than 128 bytes. The span name is sanitized\nand displayed in the Stackdriver Trace tool in the\n{% dynamic print site_values.console_name %}.\nThe name may be a method name or some other per-call site name.\nFor the same executable and the same call point, a best practice is\nto use a consistent name, which makes it easier to correlate\ncross-trace spans.", + "type": "string" + }, + "spanId": { + "format": "uint64", + "description": "Identifier for the span. Must be a 64-bit integer other than 0 and\nunique within a trace.", + "type": "string" + }, + "parentSpanId": { + "format": "uint64", + "description": "ID of the parent span, if any. Optional.", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "End time of the span in nanoseconds from the UNIX epoch.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Start time of the span in nanoseconds from the UNIX epoch.", + "type": "string" + }, + "kind": { + "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.", + "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." + ] + } + } + }, + "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": {} + }, + "ListTracesResponse": { + "properties": { + "nextPageToken": { + "description": "If defined, indicates that there are more traces that match the request\nand that this value should be passed to the next request to continue\nretrieving additional traces.", + "type": "string" + }, + "traces": { + "items": { + "$ref": "Trace" + }, + "type": "array", + "description": "List of trace records returned." + } + }, + "id": "ListTracesResponse", + "description": "The response message for the `ListTraces` method.", + "type": "object" + } + }, + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "protocol": "rest", + "canonicalName": "Cloud Trace", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/trace.readonly": { + "description": "Read Trace data for a project or application" + }, + "https://www.googleapis.com/auth/trace.append": { + "description": "Write Trace data for a project or application" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://cloudtrace.googleapis.com/" } diff --git a/DiscoveryJson/cloudtrace_v2.json b/DiscoveryJson/cloudtrace_v2.json index 9fe583bca0..d6e0529c33 100644 --- a/DiscoveryJson/cloudtrace_v2.json +++ b/DiscoveryJson/cloudtrace_v2.json @@ -1,411 +1,25 @@ { - "resources": { - "projects": { - "resources": { - "traces": { - "resources": { - "spans": { - "methods": { - "create": { - "request": { - "$ref": "Span" - }, - "description": "Creates a new Span.", - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Span" - }, - "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.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/traces/[^/]+/spans/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", - "path": "v2/{+name}", - "id": "cloudtrace.projects.traces.spans.create" - } - } - } - }, - "methods": { - "list": { - "id": "cloudtrace.projects.traces.list", - "path": "v2/{+parent}/traces", - "description": "Returns of a list of traces that match the specified filter conditions.", - "response": { - "$ref": "ListTracesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "description": "Opional. Return only traces that match this\n[trace filter](/trace/docs/trace-filters). Example:\n\n \"label:/http/url root:/_ah/background my_label:17\"", - "type": "string", - "location": "query" - }, - "endTime": { - "type": "string", - "location": "query", - "format": "google-datetime", - "description": "Optional. Do not return traces whose start time is later than this time." - }, - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "startTime": { - "format": "google-datetime", - "description": "Optional. Do not return traces whose end time is earlier than this time.", - "type": "string", - "location": "query" - }, - "pageSize": { - "type": "integer", - "location": "query", - "format": "int32", - "description": "Optional. The maximum number of results to return from this request.\nNon-positive values are ignored. The presence of `next_page_token` in the\nresponse indicates that more results might be available, even if fewer than\nthe maximum number of results is returned by this request." - }, - "parent": { - "description": "Required. The project where the trace data is stored. The format\nis `projects/PROJECT_ID`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "orderBy": { - "type": "string", - "location": "query", - "description": "Optional. A single field used to sort the returned traces.\nOnly the following field names can be used:\n\n* `trace_id`: the trace's ID field\n* `name`: the root span's resource name\n* `duration`: the difference between the root span's start time and end time\n* `start`: the start time of the root span\n\nSorting is in ascending order unless `desc` is appended to the sort field name.\nExample: `\"name desc\"`)." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "flatPath": "v2/projects/{projectsId}/traces" - }, - "batchWrite": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "parameters": { - "name": { - "description": "Required. Name of the project where the spans belong. The format is\n`projects/PROJECT_ID`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/traces:batchWrite", - "id": "cloudtrace.projects.traces.batchWrite", - "path": "v2/{+name}/traces:batchWrite", - "request": { - "$ref": "BatchWriteSpansRequest" - }, - "description": "Sends new spans to Stackdriver Trace or updates existing traces. If the\nname of a trace that you send matches that of an existing trace, new spans\nare added to the existing trace. Attempt to update existing spans results\nundefined behavior. If the name does not match, a new trace is created\nwith given set of spans." - }, - "listSpans": { - "description": "Returns a list of spans within a trace.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListSpansResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", - "type": "string" - }, - "parent": { - "description": "Required: The resource name of the trace containing the spans to list.\nThe format is `projects/PROJECT_ID/traces/TRACE_ID`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/traces/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/traces/{tracesId}:listSpans", - "path": "v2/{+parent}:listSpans", - "id": "cloudtrace.projects.traces.listSpans" - } - } - } - } - } - }, - "parameters": { - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "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": { - "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" - } - }, - "version": "v2", - "baseUrl": "https://cloudtrace.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Send and retrieve trace data from Stackdriver Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Stackdriver Trace for display, reporting, and analysis.\n", - "servicePath": "", - "basePath": "", "revision": "20170711", - "id": "cloudtrace:v2", "documentationLink": "https://cloud.google.com/trace", + "id": "cloudtrace:v2", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "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": {} - }, - "Span": { - "description": "A span represents a single operation within a trace. Spans can be\nnested to form a trace tree. Often, a trace contains a root span\nthat describes the end-to-end latency, and one or more subspans for\nits sub-operations. A trace can also contain multiple root spans,\nor none at all. Spans do not need to be contiguous—there may be\ngaps or overlaps between spans in a trace.", - "type": "object", - "properties": { - "timeEvents": { - "$ref": "TimeEvents", - "description": "The included time events. There can be up to 32 annotations and 128 network\nevents per span." - }, - "links": { - "$ref": "Links", - "description": "A maximum of 128 links are allowed per Span." - }, - "attributes": { - "$ref": "Attributes", - "description": "A set of attributes on the span. There is a limit of 32 attributes per\nspan." - }, - "spanId": { - "description": "The [SPAN_ID] portion of the span's resource name.", - "type": "string" - }, - "childSpanCount": { - "format": "uint32", - "description": "An optional number of child spans that were generated while this span\nwas active. If set, allows implementation to detect missing child spans.", - "type": "integer" - }, - "sameProcessAsParentSpan": { - "type": "boolean", - "description": "A highly recommended but not required flag that identifies when a trace\ncrosses a process boundary. True when the parent_span belongs to the\nsame process as the current span." - }, - "status": { - "$ref": "Status", - "description": "An optional final status for this span." - }, - "name": { - "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", - "type": "string" - }, - "stackTrace": { - "description": "Stack trace captured at the start of the span.", - "$ref": "StackTrace" - }, - "parentSpanId": { - "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty.", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "startTime": { - "type": "string", - "format": "google-datetime", - "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." - }, - "displayName": { - "description": "A description of the span's operation (up to 128 bytes).\nStackdriver Trace displays the description in the\n{% dynamic print site_values.console_name %}.\nFor example, the display name can be a qualified method name or a file name\nand a line number where the operation is called. A best practice is to use\nthe same display name within an application and at the same call point.\nThis makes it easier to correlate spans in different traces.", - "$ref": "TruncatableString" - } - }, - "id": "Span" - }, - "ListTracesResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then\n`next_page_token` is included. To get the next set of results, call this\nmethod again using the value of `next_page_token` as `page_token`.", - "type": "string" - }, - "traces": { - "description": "List of trace records returned.", - "items": { - "$ref": "Trace" - }, - "type": "array" - } - }, - "id": "ListTracesResponse", - "description": "The response message for the `ListTraces` method." - }, - "AttributeValue": { - "properties": { - "intValue": { - "format": "int64", - "description": "A 64-bit signed integer.", - "type": "string" - }, - "boolValue": { - "description": "A Boolean value represented by `true` or `false`.", - "type": "boolean" - }, - "stringValue": { - "description": "A string up to 256 bytes long.", - "$ref": "TruncatableString" - } - }, - "id": "AttributeValue", - "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", - "type": "object" - }, - "Attributes": { - "description": "A set of attributes, each in the format `[KEY]:[VALUE]`.", - "type": "object", - "properties": { - "droppedAttributesCount": { - "format": "int32", - "description": "The number of attributes that were discarded. Attributes can be discarded\nbecause their keys are too long or because there are too many attributes.\nIf this value is 0 then all attributes are valid.", - "type": "integer" - }, - "attributeMap": { - "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", - "additionalProperties": { - "$ref": "AttributeValue" - } - } - }, - "id": "Attributes" - }, - "Links": { - "description": "A collection of links, which are references from this span to a span\nin the same or different trace.", + "StackTrace": { + "id": "StackTrace", + "description": "A call stack appearing in a trace.", "type": "object", "properties": { - "link": { - "description": "A collection of links.", - "items": { - "$ref": "Link" - }, - "type": "array" + "stackTraceHashId": { + "format": "uint64", + "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`.", + "type": "string" }, - "droppedLinksCount": { - "format": "int32", - "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", - "type": "integer" + "stackFrames": { + "$ref": "StackFrames", + "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed." } - }, - "id": "Links" + } }, "TruncatableString": { "description": "Represents a string that might be shortened to a specified length.", @@ -417,69 +31,47 @@ "type": "integer" }, "value": { - "description": "The shortened string. For example, if the original string was 500\nbytes long and the limit of the string was 128 bytes, then this\nvalue contains the first 128 bytes of the 500-byte string. Note that\ntruncation always happens on the character boundary, to ensure that\ntruncated string is still valid UTF8. In case of multi-byte characters,\nsize of truncated string can be less than truncation limit.", - "type": "string" + "type": "string", + "description": "The shortened string. For example, if the original string was 500\nbytes long and the limit of the string was 128 bytes, then this\nvalue contains the first 128 bytes of the 500-byte string. Note that\ntruncation always happens on the character boundary, to ensure that\ntruncated string is still valid UTF8. In case of multi-byte characters,\nsize of truncated string can be less than truncation limit." } }, "id": "TruncatableString" }, - "StackTrace": { - "description": "A call stack appearing in a trace.", - "type": "object", - "properties": { - "stackFrames": { - "$ref": "StackFrames", - "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed." - }, - "stackTraceHashId": { - "format": "uint64", - "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`.", - "type": "string" - } - }, - "id": "StackTrace" - }, "TimeEvent": { - "id": "TimeEvent", "description": "A time-stamped annotation or network event in the Span.", "type": "object", "properties": { - "time": { - "type": "string", - "format": "google-datetime", - "description": "The timestamp indicating the time the event occurred." - }, "networkEvent": { - "$ref": "NetworkEvent", - "description": "An event describing an RPC message sent/received on the network." + "description": "An event describing an RPC message sent/received on the network.", + "$ref": "NetworkEvent" }, "annotation": { "$ref": "Annotation", "description": "One or more key:value pairs." + }, + "time": { + "format": "google-datetime", + "description": "The timestamp indicating the time the event occurred.", + "type": "string" } - } + }, + "id": "TimeEvent" }, "NetworkEvent": { - "description": "An event describing an RPC message sent or received on the network.", "type": "object", "properties": { - "time": { - "format": "google-datetime", - "description": "For sent messages, this is the time at which the first bit was sent.\nFor received messages, this is the time at which the last bit was\nreceived.", - "type": "string" - }, "type": { + "enum": [ + "TYPE_UNSPECIFIED", + "SENT", + "RECV" + ], "description": "Type of NetworkEvent. Indicates whether the RPC message was sent or\nreceived.", "type": "string", "enumDescriptions": [ "Unknown event type.", "Indicates a sent RPC message.", "Indicates a received RPC message." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "SENT", - "RECV" ] }, "messageId": { @@ -491,29 +83,38 @@ "format": "uint64", "description": "The number of bytes sent or received.", "type": "string" + }, + "time": { + "type": "string", + "format": "google-datetime", + "description": "For sent messages, this is the time at which the first bit was sent.\nFor received messages, this is the time at which the last bit was\nreceived." } }, - "id": "NetworkEvent" + "id": "NetworkEvent", + "description": "An event describing an RPC message sent or received on the network." }, "ListSpansResponse": { - "description": "The response message for the `ListSpans` method.", - "type": "object", "properties": { + "nextPageToken": { + "description": "If defined, indicates that there might be more spans that match the\nrequest. Pass this as the value of `pageToken` in a subsequent request to\nretrieve additional spans.", + "type": "string" + }, "spans": { - "description": "The requested spans, if there are any in the specified trace.", "items": { "$ref": "Span" }, - "type": "array" - }, - "nextPageToken": { - "description": "If defined, indicates that there might be more spans that match the\nrequest. Pass this as the value of `pageToken` in a subsequent request to\nretrieve additional spans.", - "type": "string" + "type": "array", + "description": "The requested spans, if there are any in the specified trace." } }, - "id": "ListSpansResponse" + "id": "ListSpansResponse", + "description": "The response message for the `ListSpans` method.", + "type": "object" }, "StackFrame": { + "id": "StackFrame", + "description": "Represents a single stack frame in a stack trace.", + "type": "object", "properties": { "functionName": { "$ref": "TruncatableString", @@ -525,52 +126,49 @@ "type": "string" }, "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": { - "type": "string", "format": "int64", - "description": "The column number where the function call appears, if available.\nThis is important in JavaScript because of its anonymous functions." + "description": "The column number where the function call appears, if available.\nThis is important in JavaScript because of its anonymous functions.", + "type": "string" }, "fileName": { "$ref": "TruncatableString", "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": { - "description": "An un-mangled function name, if `function_name` is\n[mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can\nbe fully-qualified (up to 1024 bytes).", - "$ref": "TruncatableString" + "$ref": "TruncatableString", + "description": "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)." } - }, - "id": "StackFrame", - "description": "Represents a single stack frame in a stack trace.", - "type": "object" + } }, "Link": { "description": "A pointer from the current span to another span in the same trace or in a\ndifferent trace. For example, this can be used in batching operations,\nwhere a single batch handler processes multiple requests from different\ntraces or when the handler receives a request from a different project.", "type": "object", "properties": { "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "CHILD_LINKED_SPAN", - "PARENT_LINKED_SPAN" - ], "description": "The relationship of the current span relative to the linked span.", "type": "string", "enumDescriptions": [ "The relationship of the two spans is unknown.", "The linked span is a child of the current span.", "The linked span is a parent of the current span." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "CHILD_LINKED_SPAN", + "PARENT_LINKED_SPAN" ] }, "attributes": { - "description": "A set of attributes on the link. There is a limit of 32 attributes per\nlink.", - "$ref": "Attributes" + "$ref": "Attributes", + "description": "A set of attributes on the link. There is a limit of 32 attributes per\nlink." }, "traceId": { "description": "`TRACE_ID` identifies a trace within a project.", @@ -584,24 +182,21 @@ "id": "Link" }, "Annotation": { - "id": "Annotation", "description": "Text annotation with a set of attributes.", "type": "object", "properties": { "description": { - "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes.", - "$ref": "TruncatableString" + "$ref": "TruncatableString", + "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes." }, "attributes": { - "description": "A set of attributes on the annotation. There is a limit of 4 attributes\nper Annotation.", - "$ref": "Attributes" + "$ref": "Attributes", + "description": "A set of attributes on the annotation. There is a limit of 4 attributes\nper Annotation." } - } + }, + "id": "Annotation" }, "StackFrames": { - "id": "StackFrames", - "description": "A collection of stack frames, which can be truncated.", - "type": "object", "properties": { "droppedFramesCount": { "format": "int32", @@ -615,10 +210,12 @@ }, "type": "array" } - } + }, + "id": "StackFrames", + "description": "A collection of stack frames, which can be truncated.", + "type": "object" }, "Trace": { - "description": "A trace describes how long it takes for an application to perform some\noperations. It consists of a set of spans, each representing\nan operation and including time information and operation details.", "type": "object", "properties": { "name": { @@ -626,12 +223,19 @@ "type": "string" } }, - "id": "Trace" + "id": "Trace", + "description": "A trace describes how long it takes for an application to perform some\noperations. It consists of a set of spans, each representing\nan operation and including time information and operation details." }, "TimeEvents": { + "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 an RPC message sent/received on the network.", "type": "object", "properties": { + "droppedNetworkEventsCount": { + "type": "integer", + "format": "int32", + "description": "The number of dropped network events in all the included time events.\nIf the value is 0, then no network events were dropped." + }, "droppedAnnotationsCount": { "format": "int32", "description": "The number of dropped annotations in all the included time events.\nIf the value is 0, then no annotations were dropped.", @@ -643,22 +247,16 @@ "$ref": "TimeEvent" }, "type": "array" - }, - "droppedNetworkEventsCount": { - "format": "int32", - "description": "The number of dropped network events in all the included time events.\nIf the value is 0, then no network events were dropped.", - "type": "integer" } - }, - "id": "TimeEvents" + } }, "Module": { "description": "Binary module.", "type": "object", "properties": { "buildId": { - "$ref": "TruncatableString", - "description": "A unique identifier for the module, usually a hash of its\ncontents (up to 128 bytes)." + "description": "A unique identifier for the module, usually a hash of its\ncontents (up to 128 bytes).", + "$ref": "TruncatableString" }, "module": { "description": "For example: main binary, kernel modules, and dynamic libraries\nsuch as libc.so, sharedlib.so (up to 256 bytes).", @@ -668,50 +266,194 @@ "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": { "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { + "type": "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" + } }, "type": "array" }, "code": { - "type": "integer", "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code." + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" + "id": "Status", + "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.", + "type": "object" }, "BatchWriteSpansRequest": { "description": "The request message for the `BatchWriteSpans` method.", "type": "object", "properties": { "spans": { - "description": "A collection of spans.", "items": { - "$ref": "Span" + "$ref": "Span" + }, + "type": "array", + "description": "A collection of spans." + } + }, + "id": "BatchWriteSpansRequest" + }, + "ListTracesResponse": { + "description": "The response message for the `ListTraces` method.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then\n`next_page_token` is included. To get the next set of results, call this\nmethod again using the value of `next_page_token` as `page_token`.", + "type": "string" + }, + "traces": { + "description": "List of trace records returned.", + "items": { + "$ref": "Trace" + }, + "type": "array" + } + }, + "id": "ListTracesResponse" + }, + "Span": { + "properties": { + "startTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "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": "The included time events. There can be up to 32 annotations and 128 network\nevents per span.", + "$ref": "TimeEvents" + }, + "links": { + "$ref": "Links", + "description": "A maximum of 128 links are allowed per Span." + }, + "attributes": { + "$ref": "Attributes", + "description": "A set of attributes on the span. There is a limit of 32 attributes per\nspan." + }, + "spanId": { + "description": "The [SPAN_ID] portion of the span's resource name.", + "type": "string" + }, + "childSpanCount": { + "format": "uint32", + "description": "An optional number of child spans that were generated while this span\nwas active. If set, allows implementation to detect missing child spans.", + "type": "integer" + }, + "sameProcessAsParentSpan": { + "type": "boolean", + "description": "A highly recommended but not required flag that identifies when a trace\ncrosses a process boundary. True when the parent_span belongs to the\nsame process as the current span." + }, + "status": { + "$ref": "Status", + "description": "An optional final status for this span." + }, + "name": { + "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", + "type": "string" + }, + "stackTrace": { + "description": "Stack trace captured at the start of the span.", + "$ref": "StackTrace" + }, + "parentSpanId": { + "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty.", + "type": "string" + }, + "endTime": { + "type": "string", + "format": "google-datetime", + "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." + } + }, + "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" + }, + "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": {} + }, + "AttributeValue": { + "properties": { + "intValue": { + "format": "int64", + "description": "A 64-bit signed integer.", + "type": "string" + }, + "boolValue": { + "description": "A Boolean value represented by `true` or `false`.", + "type": "boolean" + }, + "stringValue": { + "description": "A string up to 256 bytes long.", + "$ref": "TruncatableString" + } + }, + "id": "AttributeValue", + "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", + "type": "object" + }, + "Attributes": { + "description": "A set of attributes, each in the format `[KEY]:[VALUE]`.", + "type": "object", + "properties": { + "droppedAttributesCount": { + "format": "int32", + "description": "The number of attributes that were discarded. Attributes can be discarded\nbecause their keys are too long or because there are too many attributes.\nIf this value is 0 then all attributes are valid.", + "type": "integer" + }, + "attributeMap": { + "additionalProperties": { + "$ref": "AttributeValue" + }, + "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" + } + }, + "id": "Attributes" + }, + "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.", + "items": { + "$ref": "Link" }, "type": "array" + }, + "droppedLinksCount": { + "format": "int32", + "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", + "type": "integer" } - }, - "id": "BatchWriteSpansRequest" + } } }, "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", @@ -735,5 +477,263 @@ "name": "cloudtrace", "batchPath": "batch", "title": "Stackdriver Trace API", - "ownerName": "Google" + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "traces": { + "methods": { + "list": { + "description": "Returns of a list of traces that match the specified filter conditions.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListTracesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], + "parameters": { + "orderBy": { + "location": "query", + "description": "Optional. A single field used to sort the returned traces.\nOnly the following field names can be used:\n\n* `trace_id`: the trace's ID field\n* `name`: the root span's resource name\n* `duration`: the difference between the root span's start time and end time\n* `start`: the start time of the root span\n\nSorting is in ascending order unless `desc` is appended to the sort field name.\nExample: `\"name desc\"`).", + "type": "string" + }, + "filter": { + "description": "Opional. Return only traces that match this\n[trace filter](/trace/docs/trace-filters). Example:\n\n \"label:/http/url root:/_ah/background my_label:17\"", + "type": "string", + "location": "query" + }, + "endTime": { + "location": "query", + "format": "google-datetime", + "description": "Optional. Do not return traces whose start time is later than this time.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Optional. Do not return traces whose end time is earlier than this time.", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Optional. The maximum number of results to return from this request.\nNon-positive values are ignored. The presence of `next_page_token` in the\nresponse indicates that more results might be available, even if fewer than\nthe maximum number of results is returned by this request.", + "type": "integer" + }, + "parent": { + "description": "Required. The project where the trace data is stored. The format\nis `projects/PROJECT_ID`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/traces", + "path": "v2/{+parent}/traces", + "id": "cloudtrace.projects.traces.list" + }, + "batchWrite": { + "id": "cloudtrace.projects.traces.batchWrite", + "path": "v2/{+name}/traces:batchWrite", + "description": "Sends new spans to Stackdriver Trace or updates existing traces. If the\nname of a trace that you send matches that of an existing trace, new spans\nare added to the existing trace. Attempt to update existing spans results\nundefined behavior. If the name does not match, a new trace is created\nwith given set of spans.", + "request": { + "$ref": "BatchWriteSpansRequest" + }, + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "Required. Name of the project where the spans belong. The format is\n`projects/PROJECT_ID`.", + "type": "string", + "required": true, + "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" + }, + "listSpans": { + "description": "Returns a list of spans within a trace.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListSpansResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", + "type": "string" + }, + "parent": { + "description": "Required: The resource name of the trace containing the spans to list.\nThe format is `projects/PROJECT_ID/traces/TRACE_ID`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/traces/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/traces/{tracesId}:listSpans", + "path": "v2/{+parent}:listSpans", + "id": "cloudtrace.projects.traces.listSpans" + } + }, + "resources": { + "spans": { + "methods": { + "create": { + "request": { + "$ref": "Span" + }, + "description": "Creates a new Span.", + "httpMethod": "PUT", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Span" + }, + "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.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/traces/[^/]+/spans/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", + "path": "v2/{+name}", + "id": "cloudtrace.projects.traces.spans.create" + } + } + } + } + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "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": { + "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.", + "default": "true", + "type": "boolean" + }, + "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": "v2", + "baseUrl": "https://cloudtrace.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Send and retrieve trace data from Stackdriver Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Stackdriver Trace for display, reporting, and analysis.\n", + "servicePath": "", + "basePath": "" } diff --git a/DiscoveryJson/container_v1.json b/DiscoveryJson/container_v1.json index 5aa2771690..56358d4b8f 100644 --- a/DiscoveryJson/container_v1.json +++ b/DiscoveryJson/container_v1.json @@ -1,1560 +1,98 @@ { - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } + "parameters": { + "upload_protocol": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + }, + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean", + "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": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json" + }, + "key": { + "description": "API key. 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.", + "default": "true", + "type": "boolean" + }, + "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" } }, - "servicePath": "", - "description": "The Google Container Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", - "kind": "discovery#restDescription", - "rootUrl": "https://container.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "container", - "batchPath": "batch", - "revision": "20170627", - "id": "container:v1", - "documentationLink": "https://cloud.google.com/container-engine/", - "title": "Google Container Engine API", - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "zones": { - "methods": { - "getServerconfig": { - "description": "Returns configuration info about the Container Engine service.", - "parameterOrder": [ - "projectId", - "zone" - ], - "response": { - "$ref": "ServerConfig" - }, - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", - "id": "container.projects.zones.getServerconfig", - "path": "v1/projects/{projectId}/zones/{zone}/serverconfig" - } - }, - "resources": { - "operations": { - "methods": { - "get": { - "description": "Gets the specified operation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "GET", - "parameters": { - "operationId": { - "location": "path", - "description": "The server-assigned `name` of the operation.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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}" - }, - "list": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations", - "path": "v1/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.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "zone" - ], - "response": { - "$ref": "ListOperationsResponse" - } - }, - "cancel": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "operationId": { - "description": "The server-assigned `name` of the operation.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "id": "container.projects.zones.operations.cancel", - "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Cancels the specified operation." - } - } - }, - "clusters": { - "methods": { - "create": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone" - ], - "response": { - "$ref": "Operation" - } - }, - "resourceLabels": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "id": "container.projects.zones.clusters.resourceLabels", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "request": { - "$ref": "SetLabelsRequest" - }, - "description": "Sets labels on a cluster." - }, - "completeIpRotation": { - "id": "container.projects.zones.clusters.completeIpRotation", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation" - }, - "legacyAbac": { - "parameters": { - "clusterId": { - "description": "The name of the cluster to update.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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", - "description": "Enables or disables the ABAC authorization mechanism on a cluster.", - "request": { - "$ref": "SetLegacyAbacRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - } - }, - "setNetworkPolicy": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "id": "container.projects.zones.clusters.setNetworkPolicy", - "description": "Enables/Disables Network Policy for a cluster.", - "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "type": "string", - "required": true - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster to retrieve.", - "type": "string", - "required": true - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.get", - "description": "Gets the details of a specific cluster." - }, - "startIpRotation": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "clusterId": { - "description": "The name of the cluster.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "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", - "description": "Start master IP rotation.", - "request": { - "$ref": "StartIPRotationRequest" - } - }, - "addons": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "id": "container.projects.zones.clusters.addons", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "description": "Sets the addons of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST" - }, - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "DELETE", - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster to delete.", - "type": "string", - "required": true - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "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": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "id": "container.projects.zones.clusters.locations", - "request": { - "$ref": "SetLocationsRequest" - }, - "description": "Sets the locations of a specific cluster.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations" - }, - "update": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "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.", - "httpMethod": "PUT", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - } - }, - "monitoring": { - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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", - "description": "Sets the monitoring service of a specific cluster.", - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - } - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master" - }, - "setMasterAuth": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "id": "container.projects.zones.clusters.setMasterAuth", - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - } - }, - "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" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging" - }, - "list": { - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "zone" - ], - "response": { - "$ref": "ListClustersResponse" - } - } - }, - "resources": { - "nodePools": { - "methods": { - "get": { - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "type": "string", - "required": true - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.get", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "description": "Retrieves the node pool requested." - }, - "update": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true - }, - "nodePoolId": { - "description": "The name of the node pool to upgrade.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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", - "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" - }, - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "DELETE", - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "type": "string", - "required": true - }, - "nodePoolId": { - "description": "The name of the node pool to delete.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.delete", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "description": "Deletes a node pool from a cluster." - }, - "setManagement": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "type": "string", - "required": true - }, - "nodePoolId": { - "description": "The name of the node pool to update.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "id": "container.projects.zones.clusters.nodePools.setManagement", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "description": "Sets the NodeManagement options for a node pool." - }, - "setSize": { - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - }, - "clusterId": { - "location": "path", - "description": "The name of the cluster to update.", - "type": "string", - "required": true - }, - "nodePoolId": { - "description": "The name of the node pool to update.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "id": "container.projects.zones.clusters.nodePools.setSize", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "description": "Sets the size of a specific node pool.", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST" - }, - "list": { - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.list", - "description": "Lists the node pools for a cluster.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "ListNodePoolsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools" - }, - "rollback": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true, - "location": "path" - }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true, - "location": "path" - }, - "clusterId": { - "description": "The name of the cluster to rollback.", - "type": "string", - "required": true, - "location": "path" - }, - "nodePoolId": { - "description": "The name of the node pool to rollback.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", - "id": "container.projects.zones.clusters.nodePools.rollback", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}: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": { - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "clusterId": { - "location": "path", - "description": "The name of the cluster.", - "type": "string", - "required": true - }, - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - } - }, - "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" - }, - "autoscaling": { - "parameters": { - "projectId": { - "location": "path", - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", - "type": "string", - "required": true - }, - "zone": { - "location": "path", - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", - "type": "string", - "required": true - }, - "clusterId": { - "description": "The name of the cluster to upgrade.", - "type": "string", - "required": true, - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "The name of the node pool to upgrade.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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", - "description": "Sets the autoscaling settings of a specific node pool.", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - } - } - } - } - } - } - } - } - } - } - }, - "parameters": { - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "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.", - "default": "true", - "type": "boolean" - }, - "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" - } - }, - "schemas": { - "SetLoggingServiceRequest": { - "id": "SetLoggingServiceRequest", - "description": "SetLoggingServiceRequest sets the logging service of a cluster.", - "type": "object", - "properties": { - "loggingService": { - "description": "The logging service the cluster should use to write metrics.\nCurrently available options:\n\n* \"logging.googleapis.com\" - the Google Cloud Logging service\n* \"none\" - no metrics will be exported from the cluster", - "type": "string" - } - } - }, - "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" - }, - "SetNodePoolManagementRequest": { - "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", - "type": "object", - "properties": { - "management": { - "description": "NodeManagement configuration for the node pool.", - "$ref": "NodeManagement" - } - }, - "id": "SetNodePoolManagementRequest" - }, - "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": {} - }, - "SetNodePoolAutoscalingRequest": { - "id": "SetNodePoolAutoscalingRequest", - "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", - "type": "object", - "properties": { - "autoscaling": { - "$ref": "NodePoolAutoscaling", - "description": "Autoscaling configuration for the node pool." - } - } - }, - "CreateClusterRequest": { - "id": "CreateClusterRequest", - "description": "CreateClusterRequest creates a cluster.", - "type": "object", - "properties": { - "cluster": { - "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)", - "$ref": "Cluster" - } - } - }, - "ListNodePoolsResponse": { - "id": "ListNodePoolsResponse", - "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", - "type": "object", - "properties": { - "nodePools": { - "description": "A list of node pools for a cluster.", - "items": { - "$ref": "NodePool" - }, - "type": "array" - } - } - }, - "CompleteIPRotationRequest": { - "id": "CompleteIPRotationRequest", - "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", - "type": "object", - "properties": {} - }, - "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": {}, - "id": "StartIPRotationRequest" - }, - "LegacyAbac": { - "id": "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" - } - } - }, - "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" - }, - "nodeVersion": { - "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - } - }, - "id": "UpdateNodePoolRequest" - }, - "SetAddonsConfigRequest": { - "description": "SetAddonsConfigRequest sets the addons associated with the cluster.", - "type": "object", - "properties": { - "addonsConfig": { - "description": "The desired configurations for the various addons available to run in the\ncluster.", - "$ref": "AddonsConfig" - } - }, - "id": "SetAddonsConfigRequest" - }, - "NodePool": { - "id": "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": { - "description": "The node configuration of the pool.", - "$ref": "NodeConfig" - }, - "name": { - "description": "The name of the node pool.", - "type": "string" - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", - "type": "string" - }, - "autoscaling": { - "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present.", - "$ref": "NodePoolAutoscaling" - }, - "initialNodeCount": { - "format": "int32", - "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.", - "type": "integer" - }, - "management": { - "$ref": "NodeManagement", - "description": "NodeManagement configuration for this NodePool." - }, - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", - "type": "string" - }, - "instanceGroupUrls": { - "description": "[Output only] The resource URLs of [instance\ngroups](/compute/docs/instance-groups/) associated with this\nnode pool.", - "items": { - "type": "string" - }, - "type": "array" - }, - "version": { - "description": "[Output only] The version of the Kubernetes of this node.", - "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": { - "resourceLabels": { - "description": "The labels to set for that cluster.", - "type": "object", - "additionalProperties": { - "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\nContainer Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", - "type": "string" - } - }, - "id": "SetLabelsRequest" - }, - "NodeManagement": { - "id": "NodeManagement", - "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", - "type": "object", - "properties": { - "upgradeOptions": { - "description": "Specifies the Auto Upgrade knobs for the node pool.", - "$ref": "AutoUpgradeOptions" - }, - "autoRepair": { - "description": "A flag that specifies whether the node auto-repair is enabled for the node\npool. If enabled, the nodes in this node pool will be monitored and, if\nthey fail health checks too many times, an automatic repair action will be\ntriggered.", - "type": "boolean" - }, - "autoUpgrade": { - "description": "A flag that specifies whether node auto-upgrade is enabled for the node\npool. If enabled, node auto-upgrade helps keep the nodes in your node pool\nup to date with the latest release version of Kubernetes.", - "type": "boolean" - } - } - }, + "schemas": { "CancelOperationRequest": { + "id": "CancelOperationRequest", "description": "CancelOperationRequest cancels a single operation.", "type": "object", - "properties": {}, - "id": "CancelOperationRequest" + "properties": {} }, "SetLegacyAbacRequest": { "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", @@ -1568,12 +106,10 @@ "id": "SetLegacyAbacRequest" }, "Operation": { - "id": "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": { "status": { - "description": "The current status of the operation.", "type": "string", "enumDescriptions": [ "Not set.", @@ -1588,29 +124,31 @@ "RUNNING", "DONE", "ABORTING" - ] - }, - "statusMessage": { - "description": "If an error has occurred, a textual description of the error.", - "type": "string" + ], + "description": "The current status of the operation." }, "name": { "description": "The server-assigned ID for the operation.", "type": "string" }, - "selfLink": { - "description": "Server-defined URL for the resource.", + "statusMessage": { + "description": "If an error has occurred, a textual description of the error.", "type": "string" }, - "targetLink": { - "description": "Server-defined URL for the target of the operation.", + "selfLink": { + "description": "Server-defined URL for the resource.", "type": "string" }, "detail": { "description": "Detailed operation progress, if available.", "type": "string" }, + "targetLink": { + "description": "Server-defined URL for the target of the operation.", + "type": "string" + }, "operationType": { + "type": "string", "enumDescriptions": [ "Not set.", "Cluster create.", @@ -1647,33 +185,31 @@ "SET_NODE_POOL_SIZE", "SET_NETWORK_POLICY" ], - "description": "The operation type.", - "type": "string" + "description": "The operation type." }, "zone": { "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation\nis taking place.", "type": "string" } - } + }, + "id": "Operation" }, "AddonsConfig": { - "id": "AddonsConfig", "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", "type": "object", "properties": { - "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." - }, "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" + "$ref": "HorizontalPodAutoscaling", + "description": "Configuration for the horizontal pod autoscaling feature, which\nincreases or decreases the number of replica pods a replication controller\nhas based on the resource usage of the existing pods." + }, + "httpLoadBalancing": { + "description": "Configuration for the HTTP (L7) load balancing controller addon, which\nmakes it easy to set up HTTP load balancers for services in a cluster.", + "$ref": "HttpLoadBalancing" } - } + }, + "id": "AddonsConfig" }, "SetLocationsRequest": { - "description": "SetLocationsRequest sets the locations of the cluster.", - "type": "object", "properties": { "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.", @@ -1683,13 +219,15 @@ "type": "array" } }, - "id": "SetLocationsRequest" + "id": "SetLocationsRequest", + "description": "SetLocationsRequest sets the locations of the cluster.", + "type": "object" }, "RollbackNodePoolUpgradeRequest": { - "id": "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": {} + "properties": {}, + "id": "RollbackNodePoolUpgradeRequest" }, "SetNodePoolSizeRequest": { "id": "SetNodePoolSizeRequest", @@ -1704,18 +242,17 @@ } }, "UpdateClusterRequest": { + "id": "UpdateClusterRequest", "description": "UpdateClusterRequest updates the settings of a cluster.", "type": "object", "properties": { "update": { - "description": "A description of the update.", - "$ref": "ClusterUpdate" + "$ref": "ClusterUpdate", + "description": "A description of the update." } - }, - "id": "UpdateClusterRequest" + } }, "NetworkPolicy": { - "id": "NetworkPolicy", "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", "type": "object", "properties": { @@ -1724,6 +261,8 @@ "type": "boolean" }, "provider": { + "description": "The selected network policy provider.", + "type": "string", "enumDescriptions": [ "Not set", "Tigera (Calico Felix)." @@ -1731,35 +270,125 @@ "enum": [ "UNKNOWN", "CALICO" - ], - "description": "The selected network policy provider.", + ] + } + }, + "id": "NetworkPolicy" + }, + "UpdateMasterRequest": { + "properties": { + "masterVersion": { + "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", + "type": "string" + } + }, + "id": "UpdateMasterRequest", + "description": "UpdateMasterRequest updates the master of the cluster.", + "type": "object" + }, + "Cluster": { + "description": "A Google Container Engine cluster.", + "type": "object", + "properties": { + "clusterIpv4Cidr": { + "type": "string", + "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`." + }, + "initialNodeCount": { + "format": "int32", + "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.", + "type": "integer" + }, + "nodePools": { + "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", + "items": { + "$ref": "NodePool" + }, + "type": "array" + }, + "locations": { + "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", + "type": "string" + }, + "instanceGroupUrls": { + "description": "[Output only] The resource URLs of [instance\ngroups](/compute/docs/instance-groups/) associated with this\ncluster.", + "items": { + "type": "string" + }, + "type": "array" + }, + "networkPolicy": { + "description": "Configuration options for the NetworkPolicy feature.", + "$ref": "NetworkPolicy" + }, + "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": { + "type": "boolean", + "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." + }, + "description": { + "description": "An optional description of this cluster.", + "type": "string" + }, + "currentNodeCount": { + "format": "int32", + "description": "[Output only] The number of nodes currently in the cluster.", + "type": "integer" + }, + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* `monitoring.googleapis.com` - the Google Cloud Monitoring service.\n* `none` - no metrics will be exported from the cluster.\n* if left as an empty string, `monitoring.googleapis.com` will be used.", + "type": "string" + }, + "network": { + "description": "The name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ncluster is connected. If left unspecified, the `default` network\nwill be used.", + "type": "string" + }, + "labelFingerprint": { + "description": "The fingerprint of the set of labels for this cluster.", + "type": "string" + }, + "zone": { + "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string" + }, + "loggingService": { + "description": "The logging service the cluster should use to write logs.\nCurrently available options:\n\n* `logging.googleapis.com` - the Google Cloud Logging service.\n* `none` - no logs will be exported from the cluster.\n* if left as an empty string,`logging.googleapis.com` will be used.", + "type": "string" + }, + "nodeIpv4CidrSize": { + "format": "int32", + "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.", + "type": "integer" + }, + "expireTime": { + "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" - } - } - }, - "UpdateMasterRequest": { - "id": "UpdateMasterRequest", - "description": "UpdateMasterRequest updates the master of the cluster.", - "type": "object", - "properties": { - "masterVersion": { - "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", + }, + "statusMessage": { + "description": "[Output only] Additional information about the current status of this\ncluster, if available.", "type": "string" - } - } - }, - "Cluster": { - "id": "Cluster", - "description": "A Google Container Engine cluster.", - "type": "object", - "properties": { + }, + "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": { - "description": "Parameters used in creating the cluster's nodes.\nSee `nodeConfig` for the description of its properties.\nFor requests, this field should only be used in lieu of a\n\"node_pool\" object, since this configuration (along with the\n\"initial_node_count\") will be used to create a \"NodePool\" object with an\nauto-generated name. Do not use this and a node_pool at the same time.\nFor responses, this field will be populated with the node configuration of\nthe first node pool.\n\nIf unspecified, the defaults are used.", - "$ref": "NodeConfig" + "$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": { "description": "Configurations for the various addons available to run in the cluster.", @@ -1798,491 +427,1862 @@ "type": "string" }, "resourceLabels": { + "type": "object", "additionalProperties": { "type": "string" }, - "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources.", - "type": "object" + "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources." }, "initialClusterVersion": { "description": "The initial Kubernetes version for this cluster. Valid versions are those\nfound in validMasterVersions returned by getServerConfig. The version can\nbe upgraded over time; such upgrades are reflected in\ncurrentMasterVersion and currentNodeVersion.", "type": "string" }, "ipAllocationPolicy": { - "description": "Configuration for cluster IP allocation.", - "$ref": "IPAllocationPolicy" - }, - "legacyAbac": { - "description": "Configuration for the legacy ABAC authorization mode.", - "$ref": "LegacyAbac" + "$ref": "IPAllocationPolicy", + "description": "Configuration for cluster IP allocation." }, "endpoint": { "description": "[Output only] The IP address of this cluster's master endpoint.\nThe endpoint can be accessed from the internet at\n`https://username:password@endpoint/`.\n\nSee the `masterAuth` property of this resource for username and\npassword information.", "type": "string" }, + "legacyAbac": { + "description": "Configuration for the legacy ABAC authorization mode.", + "$ref": "LegacyAbac" + }, "createTime": { "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" + } + }, + "id": "Cluster" + }, + "CreateNodePoolRequest": { + "id": "CreateNodePoolRequest", + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "type": "object", + "properties": { + "nodePool": { + "$ref": "NodePool", + "description": "The node pool to create." + } + } + }, + "ListOperationsResponse": { + "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "type": "object", + "properties": { + "operations": { + "items": { + "$ref": "Operation" + }, + "type": "array", + "description": "A list of operations in the project in the specified zone." }, - "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`.", + "missingZones": { + "items": { + "type": "string" + }, + "type": "array", + "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones." + } + }, + "id": "ListOperationsResponse" + }, + "SetMonitoringServiceRequest": { + "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", + "type": "object", + "properties": { + "monitoringService": { + "description": "The monitoring service the cluster should use to write metrics.\nCurrently available options:\n\n* \"monitoring.googleapis.com\" - the Google Cloud Monitoring service\n* \"none\" - no metrics will be exported from the cluster", + "type": "string" + } + }, + "id": "SetMonitoringServiceRequest" + }, + "ServerConfig": { + "id": "ServerConfig", + "description": "Container Engine service configuration.", + "type": "object", + "properties": { + "defaultImageType": { + "description": "Default image type.", + "type": "string" + }, + "defaultClusterVersion": { + "type": "string", + "description": "Version of Kubernetes the service deploys by default." + }, + "validImageTypes": { + "description": "List of valid image types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "validNodeVersions": { + "items": { + "type": "string" + }, + "type": "array", + "description": "List of valid node upgrade target versions." + }, + "validMasterVersions": { + "description": "List of valid master versions.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "MasterAuth": { + "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", + "type": "object", + "properties": { + "password": { + "description": "The password to use for HTTP basic authentication to the master endpoint.\nBecause the master endpoint is open to the Internet, you should create a\nstrong password. If a password is provided for cluster creation, username\nmust be non-empty.", + "type": "string" + }, + "clientCertificateConfig": { + "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued.", + "$ref": "ClientCertificateConfig" + }, + "clientKey": { + "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", + "type": "string" + }, + "clusterCaCertificate": { + "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", + "type": "string" + }, + "clientCertificate": { + "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", + "type": "string" + }, + "username": { + "description": "The username to use for HTTP basic authentication to the master endpoint.\nFor clusters v1.6.0 and later, you can disable basic authentication by\nproviding an empty username.", + "type": "string" + } + }, + "id": "MasterAuth" + }, + "NodeConfig": { + "description": "Parameters that describe the nodes in a cluster.", + "type": "object", + "properties": { + "localSsdCount": { + "format": "int32", + "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.", + "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 four reserved keys:\n\"instance-template\", \"kube-env\", \"startup-script\", and \"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" + }, + "diskSizeGb": { + "format": "int32", + "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.", + "type": "integer" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "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." + }, + "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" + }, + "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" + }, + "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": { + "items": { + "type": "string" + }, + "type": "array", + "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." + }, + "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" + }, + "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:\nhttp://kubernetes.io/v1.1/docs/user-guide/labels.html", + "type": "object" + } + }, + "id": "NodeConfig" + }, + "AutoUpgradeOptions": { + "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", + "type": "object", + "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" + }, + "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.", + "items": { + "$ref": "Cluster" + }, + "type": "array" + }, + "missingZones": { + "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "ListClustersResponse" + }, + "HttpLoadBalancing": { + "type": "object", + "properties": { + "disabled": { + "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", + "type": "boolean" + } + }, + "id": "HttpLoadBalancing", + "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." + }, + "ClientCertificateConfig": { + "description": "Configuration for client certificates on the cluster.", + "type": "object", + "properties": { + "issueClientCertificate": { + "description": "Issue a client certificate.", + "type": "boolean" + } + }, + "id": "ClientCertificateConfig" + }, + "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": { + "format": "int32", + "description": "Maximum number of nodes in the NodePool. Must be \u003e= min_node_count. There\nhas to enough quota to scale up the cluster.", + "type": "integer" }, - "initialNodeCount": { + "minNodeCount": { "format": "int32", - "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.", + "description": "Minimum number of nodes in the NodePool. Must be \u003e= 1 and \u003c=\nmax_node_count.", "type": "integer" }, - "nodePools": { - "description": "The node pools associated with this cluster.\nThis field should not be set if \"node_config\" or \"initial_node_count\" are\nspecified.", - "items": { - "$ref": "NodePool" - }, - "type": "array" + "enabled": { + "description": "Is autoscaling enabled for this node pool.", + "type": "boolean" + } + } + }, + "SetMasterAuthRequest": { + "description": "SetMasterAuthRequest updates the admin password of a cluster.", + "type": "object", + "properties": { + "update": { + "$ref": "MasterAuth", + "description": "A description of the update." }, - "locations": { - "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located.", + "action": { + "enum": [ + "UNKNOWN", + "SET_PASSWORD", + "GENERATE_PASSWORD" + ], + "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." + ] + } + }, + "id": "SetMasterAuthRequest" + }, + "SetNetworkPolicyRequest": { + "id": "SetNetworkPolicyRequest", + "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", + "type": "object", + "properties": { + "networkPolicy": { + "description": "Configuration options for the NetworkPolicy feature.", + "$ref": "NetworkPolicy" + } + } + }, + "ClusterUpdate": { + "description": "ClusterUpdate describes an update to the cluster. Exactly one update can\nbe applied to a cluster with each request, so at most one field can be\nprovided.", + "type": "object", + "properties": { + "desiredLocations": { + "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", "items": { "type": "string" }, "type": "array" }, - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", - "type": "string" - }, - "instanceGroupUrls": { - "description": "[Output only] The resource URLs of [instance\ngroups](/compute/docs/instance-groups/) associated with this\ncluster.", - "items": { - "type": "string" - }, - "type": "array" + "desiredNodePoolAutoscaling": { + "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool.", + "$ref": "NodePoolAutoscaling" }, - "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.", + "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" }, - "networkPolicy": { - "description": "Configuration options for the NetworkPolicy feature.", - "$ref": "NetworkPolicy" + "desiredImageType": { + "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", + "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" + "desiredAddonsConfig": { + "description": "Configurations for the various addons available to run in the cluster.", + "$ref": "AddonsConfig" }, - "description": { - "description": "An optional description of this 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" }, - "currentNodeCount": { - "format": "int32", - "description": "[Output only] The number of nodes currently in the cluster.", - "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.", + "desiredNodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", "type": "string" }, - "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.", + "desiredMasterVersion": { + "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", "type": "string" + } + }, + "id": "ClusterUpdate" + }, + "IPAllocationPolicy": { + "description": "Configuration for controlling how IPs are allocated in the cluster.", + "type": "object", + "properties": { + "subnetworkName": { + "type": "string", + "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will choosen for the new\nsubnetwork." }, - "labelFingerprint": { - "description": "The fingerprint of the set of labels for this cluster.", + "clusterIpv4Cidr": { + "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [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" }, - "zone": { - "description": "[Output only] The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "nodeIpv4Cidr": { + "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [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" }, - "expireTime": { - "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "servicesIpv4Cidr": { + "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [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" }, - "nodeIpv4CidrSize": { - "format": "int32", - "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.", - "type": "integer" + "useIpAliases": { + "description": "Whether alias IPs will be used for pod IPs in the cluster.", + "type": "boolean" }, + "createSubnetwork": { + "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", + "type": "boolean" + } + }, + "id": "IPAllocationPolicy" + }, + "SetLoggingServiceRequest": { + "type": "object", + "properties": { "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" - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\ncluster, if available.", + "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" - }, - "masterAuth": { - "description": "The authentication information for accessing the master endpoint.", - "$ref": "MasterAuth" } - } + }, + "id": "SetLoggingServiceRequest", + "description": "SetLoggingServiceRequest sets the logging service of a cluster." }, - "CreateNodePoolRequest": { - "id": "CreateNodePoolRequest", - "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "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": { - "nodePool": { - "$ref": "NodePool", - "description": "The node pool to create." + "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" }, - "ListOperationsResponse": { - "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "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" + }, + "SetNodePoolManagementRequest": { + "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", "type": "object", "properties": { - "operations": { - "description": "A list of operations in the project in the specified zone.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "missingZones": { - "description": "If any zones are listed here, the list of operations returned\nmay be missing the operations from those zones.", - "items": { - "type": "string" - }, - "type": "array" + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for the node pool." } }, - "id": "ListOperationsResponse" + "id": "SetNodePoolManagementRequest" }, - "SetMonitoringServiceRequest": { - "id": "SetMonitoringServiceRequest", - "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", + "SetNodePoolAutoscalingRequest": { "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" + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaling configuration for the node pool." } - } + }, + "id": "SetNodePoolAutoscalingRequest", + "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool." }, - "ServerConfig": { - "description": "Container Engine service configuration.", + "CreateClusterRequest": { + "description": "CreateClusterRequest creates a cluster.", "type": "object", "properties": { - "validImageTypes": { - "description": "List of valid image types.", - "items": { - "type": "string" - }, - "type": "array" - }, - "validNodeVersions": { - "description": "List of valid node upgrade target versions.", - "items": { - "type": "string" - }, - "type": "array" - }, - "validMasterVersions": { - "description": "List of valid master versions.", + "cluster": { + "$ref": "Cluster", + "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)" + } + }, + "id": "CreateClusterRequest" + }, + "ListNodePoolsResponse": { + "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "type": "object", + "properties": { + "nodePools": { + "description": "A list of node pools for a cluster.", "items": { - "type": "string" + "$ref": "NodePool" }, "type": "array" - }, - "defaultImageType": { - "description": "Default image type.", + } + }, + "id": "ListNodePoolsResponse" + }, + "CompleteIPRotationRequest": { + "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", + "type": "object", + "properties": {}, + "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": {}, + "id": "StartIPRotationRequest" + }, + "LegacyAbac": { + "properties": { + "enabled": { + "type": "boolean", + "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." + } + }, + "id": "LegacyAbac", + "description": "Configuration for the legacy Attribute Based Access Control authorization\nmode.", + "type": "object" + }, + "UpdateNodePoolRequest": { + "type": "object", + "properties": { + "nodeVersion": { + "description": "The Kubernetes version to change the nodes to (typically an\nupgrade). Use `-` to upgrade to the latest version supported by\nthe server.", "type": "string" }, - "defaultClusterVersion": { - "description": "Version of Kubernetes the service deploys by default.", + "imageType": { + "description": "The desired image type for the node pool.", "type": "string" } }, - "id": "ServerConfig" + "id": "UpdateNodePoolRequest", + "description": "UpdateNodePoolRequests update a node pool's image and/or version." }, - "NodeConfig": { - "id": "NodeConfig", - "description": "Parameters that describe the nodes in a cluster.", + "SetAddonsConfigRequest": { + "description": "SetAddonsConfigRequest sets the addons associated with the cluster.", "type": "object", "properties": { - "tags": { - "description": "The list of instance tags applied to all nodes. Tags are used to identify\nvalid sources or targets for network firewalls and are specified by\nthe client during cluster or node pool creation. Each tag within the list\nmust comply with RFC1035.", - "items": { - "type": "string" - }, - "type": "array" + "addonsConfig": { + "$ref": "AddonsConfig", + "description": "The desired configurations for the various addons available to run in the\ncluster." + } + }, + "id": "SetAddonsConfigRequest" + }, + "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." + ] }, - "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.", + "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" }, - "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`.", + "name": { + "description": "The name of the node pool.", "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.", + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present." + }, + "initialNodeCount": { + "format": "int32", + "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.", + "type": "integer" + }, + "management": { + "description": "NodeManagement configuration for this NodePool.", + "$ref": "NodeManagement" + }, + "selfLink": { + "description": "[Output only] Server-defined URL for the resource.", "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.", + "version": { + "description": "[Output only] The version of the Kubernetes of this node.", + "type": "string" + }, + "instanceGroupUrls": { "items": { "type": "string" }, - "type": "array" - }, - "preemptible": { - "description": "Whether the nodes are created as preemptible VM instances. See:\nhttps://cloud.google.com/compute/docs/instances/preemptible for more\ninformation about preemptible VM instances.", - "type": "boolean" - }, - "labels": { + "type": "array", + "description": "[Output only] The resource URLs of [instance\ngroups](/compute/docs/instance-groups/) associated with this\nnode pool." + } + }, + "id": "NodePool" + }, + "SetLabelsRequest": { + "type": "object", + "properties": { + "resourceLabels": { "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:\nhttp://kubernetes.io/v1.1/docs/user-guide/labels.html", + "description": "The labels to set for that cluster.", "type": "object" }, - "localSsdCount": { - "format": "int32", - "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.", - "type": "integer" + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource,\nused to detect conflicts. The fingerprint is initially generated by\nContainer Engine and changes after every request to modify or update\nlabels. You must always provide an up-to-date fingerprint hash when\nupdating or changing labels. Make a \u003ccode\u003eget()\u003c/code\u003e request to the\nresource to get the latest fingerprint.", + "type": "string" + } + }, + "id": "SetLabelsRequest", + "description": "SetLabelsRequest sets the Google Cloud Platform labels on a Google Container\nEngine cluster, which will in turn set them for Google Compute Engine\nresources used by that cluster" + }, + "NodeManagement": { + "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", + "type": "object", + "properties": { + "autoRepair": { + "description": "A flag that specifies whether the node auto-repair is enabled for the node\npool. If enabled, the nodes in this node pool will be monitored and, if\nthey fail health checks too many times, an automatic repair action will be\ntriggered.", + "type": "boolean" }, - "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 four reserved keys:\n\"instance-template\", \"kube-env\", \"startup-script\", and \"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" + "autoUpgrade": { + "type": "boolean", + "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." + }, + "upgradeOptions": { + "$ref": "AutoUpgradeOptions", + "description": "Specifies the Auto Upgrade knobs for the node pool." + } + }, + "id": "NodeManagement" + } + }, + "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://container.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "servicePath": "", + "description": "The Google Container Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", + "kind": "discovery#restDescription", + "rootUrl": "https://container.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "container", + "batchPath": "batch", + "revision": "20170627", + "documentationLink": "https://cloud.google.com/container-engine/", + "id": "container:v1", + "title": "Google Container Engine API", + "discoveryVersion": "v1", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "zones": { + "methods": { + "getServerconfig": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "id": "container.projects.zones.getServerconfig", + "path": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "description": "Returns configuration info about the Container Engine service.", + "response": { + "$ref": "ServerConfig" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "GET", + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "clusters": { + "methods": { + "locations": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "type": "string", + "required": true, + "location": "path", + "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", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "id": "container.projects.zones.clusters.locations", + "request": { + "$ref": "SetLocationsRequest" + }, + "description": "Sets the locations of a specific cluster." + }, + "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.", + "httpMethod": "PUT", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "type": "string", + "required": true, + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840)." + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides." + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" + }, + "monitoring": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "id": "container.projects.zones.clusters.monitoring", + "description": "Sets the monitoring service of a specific cluster.", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "master": { + "id": "container.projects.zones.clusters.master", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "description": "Updates the master of a specific cluster.", + "request": { + "$ref": "UpdateMasterRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master" + }, + "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.", + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "id": "container.projects.zones.clusters.setMasterAuth" + }, + "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": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides." + }, + "clusterId": { + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true, + "location": "path" + } + }, + "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" + }, + "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": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides, or \"-\" for all zones." + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "id": "container.projects.zones.clusters.list", + "path": "v1/projects/{projectId}/zones/{zone}/clusters" + }, + "resourceLabels": { + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "id": "container.projects.zones.clusters.resourceLabels", + "description": "Sets labels on a cluster.", + "request": { + "$ref": "SetLabelsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "description": "The name of the cluster.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels" + }, + "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": { + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides." + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "id": "container.projects.zones.clusters.create", + "path": "v1/projects/{projectId}/zones/{zone}/clusters" + }, + "completeIpRotation": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "type": "string", + "required": true, + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber)." + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "description": "The name of the cluster.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "id": "container.projects.zones.clusters.completeIpRotation", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "description": "Completes master IP rotation.", + "request": { + "$ref": "CompleteIPRotationRequest" + } + }, + "get": { + "id": "container.projects.zones.clusters.get", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "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": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to retrieve.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" + }, + "legacyAbac": { + "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.", + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to update.", + "type": "string", + "required": true + } + } + }, + "setNetworkPolicy": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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" + } + }, + "startIpRotation": { + "description": "Start master IP rotation.", + "request": { + "$ref": "StartIPRotationRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "description": "The name of the cluster.", + "type": "string", + "required": true, + "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": { + "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": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "id": "container.projects.zones.clusters.addons", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons" + }, + "delete": { + "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.", + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to delete.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "nodePools": { + "methods": { + "rollback": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "id": "container.projects.zones.clusters.nodePools.rollback", + "path": "v1/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" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to rollback.", + "type": "string", + "required": true + }, + "nodePoolId": { + "description": "The name of the node pool to rollback.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "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", + "description": "Creates a node pool for a cluster.", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides." + }, + "clusterId": { + "description": "The name of the cluster.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "autoscaling": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + }, + "nodePoolId": { + "location": "path", + "description": "The name of the node pool to upgrade.", + "type": "string", + "required": true + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides." + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "id": "container.projects.zones.clusters.nodePools.autoscaling", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "description": "Sets the autoscaling settings of a specific node pool." + }, + "get": { + "description": "Retrieves the node pool requested.", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "GET", + "response": { + "$ref": "NodePool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster.", + "type": "string", + "required": true + }, + "nodePoolId": { + "location": "path", + "description": "The name of the node pool.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "id": "container.projects.zones.clusters.nodePools.get", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}" + }, + "update": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster to upgrade.", + "type": "string", + "required": true + }, + "nodePoolId": { + "description": "The name of the node pool to upgrade.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "id": "container.projects.zones.clusters.nodePools.update", + "description": "Updates the version and/or image type of a specific node pool.", + "request": { + "$ref": "UpdateNodePoolRequest" + } + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "DELETE", + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster.", + "type": "string", + "required": true + }, + "nodePoolId": { + "location": "path", + "description": "The name of the node pool to delete.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "id": "container.projects.zones.clusters.nodePools.delete", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}" + }, + "setManagement": { + "parameters": { + "nodePoolId": { + "location": "path", + "description": "The name of the node pool to update.", + "type": "string", + "required": true + }, + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the cluster to update." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "id": "container.projects.zones.clusters.nodePools.setManagement", + "description": "Sets the NodeManagement options for a node pool.", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + } + }, + "setSize": { + "id": "container.projects.zones.clusters.nodePools.setSize", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "description": "Sets the size of a specific node pool.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "clusterId": { + "description": "The name of the cluster to update.", + "type": "string", + "required": true, + "location": "path" + }, + "nodePoolId": { + "location": "path", + "description": "The name of the node pool to update.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize" + }, + "list": { + "id": "container.projects.zones.clusters.nodePools.list", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "description": "Lists the node pools for a cluster.", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "GET", + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://developers.google.com/console/help/new/#projectnumber).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true, + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "The name of the cluster.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools" + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "operationId": { + "location": "path", + "description": "The server-assigned `name` of the operation.", + "type": "string", + "required": true + }, + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the operation resides.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "id": "container.projects.zones.operations.cancel", + "description": "Cancels the specified operation.", + "request": { + "$ref": "CancelOperationRequest" + } + }, + "get": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "httpMethod": "GET", + "parameters": { + "zone": { + "location": "path", + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "type": "string", + "required": true + }, + "operationId": { + "location": "path", + "description": "The server-assigned `name` of the operation.", + "type": "string", + "required": true + }, + "projectId": { + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true + } + }, + "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." + }, + "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "GET", + "parameters": { + "projectId": { + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "type": "string", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available)\nto return operations for, or `-` for all zones." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations", + "id": "container.projects.zones.operations.list", + "path": "v1/projects/{projectId}/zones/{zone}/operations", + "description": "Lists all operations in a project in a specific zone or all zones." + } + } + } } - }, - "diskSizeGb": { - "format": "int32", - "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.", - "type": "integer" - } - } - }, - "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": { - "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" - }, - "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" - } - }, - "id": "MasterAuth" - }, - "AutoUpgradeOptions": { - "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", - "type": "object", - "properties": { - "description": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", - "type": "string" - }, - "autoUpgradeStartTime": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the approximate start time for the upgrades, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", - "type": "string" - } - }, - "id": "AutoUpgradeOptions" - }, - "ListClustersResponse": { - "description": "ListClustersResponse is the result of ListClustersRequest.", - "type": "object", - "properties": { - "missingZones": { - "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", - "items": { - "type": "string" - }, - "type": "array" - }, - "clusters": { - "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", - "items": { - "$ref": "Cluster" - }, - "type": "array" - } - }, - "id": "ListClustersResponse" - }, - "HttpLoadBalancing": { - "description": "Configuration options for the HTTP (L7) load balancing controller addon,\nwhich makes it easy to set up HTTP load balancers for services in a cluster.", - "type": "object", - "properties": { - "disabled": { - "description": "Whether the HTTP Load Balancing controller is enabled in the cluster.\nWhen enabled, it runs a small pod in the cluster that manages the load\nbalancers.", - "type": "boolean" - } - }, - "id": "HttpLoadBalancing" - }, - "ClientCertificateConfig": { - "id": "ClientCertificateConfig", - "description": "Configuration for client certificates on the cluster.", - "type": "object", - "properties": { - "issueClientCertificate": { - "description": "Issue a client certificate.", - "type": "boolean" - } - } - }, - "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": { - "format": "int32", - "description": "Maximum number of nodes in the NodePool. Must be \u003e= min_node_count. There\nhas to enough quota to scale up the cluster.", - "type": "integer" - }, - "minNodeCount": { - "format": "int32", - "description": "Minimum number of nodes in the NodePool. Must be \u003e= 1 and \u003c=\nmax_node_count.", - "type": "integer" - }, - "enabled": { - "description": "Is autoscaling enabled for this node pool.", - "type": "boolean" - } - }, - "id": "NodePoolAutoscaling" - }, - "SetMasterAuthRequest": { - "description": "SetMasterAuthRequest updates the admin password of a cluster.", - "type": "object", - "properties": { - "update": { - "description": "A description of the update.", - "$ref": "MasterAuth" - }, - "action": { - "enumDescriptions": [ - "Operation is unknown and will error out", - "Set the password to a user generated value.", - "Generate a new password and set it to that." - ], - "enum": [ - "UNKNOWN", - "SET_PASSWORD", - "GENERATE_PASSWORD" - ], - "description": "The exact form of action to be taken on the master auth", - "type": "string" - } - }, - "id": "SetMasterAuthRequest" - }, - "SetNetworkPolicyRequest": { - "id": "SetNetworkPolicyRequest", - "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", - "type": "object", - "properties": { - "networkPolicy": { - "description": "Configuration options for the NetworkPolicy feature.", - "$ref": "NetworkPolicy" - } - } - }, - "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": { - "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). Use `-` to upgrade to the latest version supported by\nthe server.", - "type": "string" - }, - "desiredMasterVersion": { - "description": "The Kubernetes version to change the master to. The only valid value is the\nlatest supported version. Use \"-\" to have the server automatically select\nthe latest version.", - "type": "string" - }, - "desiredNodePoolAutoscaling": { - "description": "Autoscaler configuration for the node pool specified in\ndesired_node_pool_id. If there is only one pool in the\ncluster and desired_node_pool_id is not provided then\nthe change applies to that single node pool.", - "$ref": "NodePoolAutoscaling" - }, - "desiredLocations": { - "description": "The desired list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located. Changing the locations a cluster is in will result\nin nodes being either created or removed from the cluster, depending on\nwhether locations are being added or removed.\n\nThis list must always include the cluster's primary zone.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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" - } - } - }, - "IPAllocationPolicy": { - "id": "IPAllocationPolicy", - "description": "Configuration for controlling how IPs are allocated in the cluster.", - "type": "object", - "properties": { - "clusterIpv4Cidr": { - "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [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" - }, - "nodeIpv4Cidr": { - "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)\nnotation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.\n`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range\nto use.", - "type": "string" - }, - "servicesIpv4Cidr": { - "description": "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 will be chosen with the default size.\n\nSet to /netmask (e.g. `/14`) to have a range be chosen with a specific\nnetmask.\n\nSet to a [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" - }, - "useIpAliases": { - "description": "Whether alias IPs will be used for pod IPs in the cluster.", - "type": "boolean" - }, - "createSubnetwork": { - "description": "Whether a new subnetwork will be created automatically for the cluster.\n\nThis field is only applicable when `use_ip_aliases` is true.", - "type": "boolean" - }, - "subnetworkName": { - "description": "A custom subnetwork name to be used if `create_subnetwork` is true. If\nthis field is empty, then an automatic name will choosen for the new\nsubnetwork.", - "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" - }, - "version": "v1", - "baseUrl": "https://container.googleapis.com/" + } } diff --git a/DiscoveryJson/dataflow_v1b3.json b/DiscoveryJson/dataflow_v1b3.json index 0ae0891d71..4ee13cf00d 100644 --- a/DiscoveryJson/dataflow_v1b3.json +++ b/DiscoveryJson/dataflow_v1b3.json @@ -1,54 +1,63 @@ { + "kind": "discovery#restDescription", + "servicePath": "", + "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", + "rootUrl": "https://dataflow.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "dataflow", + "batchPath": "batch", + "id": "dataflow:v1b3", + "revision": "20170713", + "documentationLink": "https://cloud.google.com/dataflow", + "title": "Google Dataflow API", + "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "projects": { "methods": { "workerMessages": { - "description": "Send a worker_message to the service.", "request": { "$ref": "SendWorkerMessagesRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], + "description": "Send a worker_message to the service.", "response": { "$ref": "SendWorkerMessagesResponse" }, - "parameters": { - "projectId": { - "description": "The project to send the WorkerMessages to.", - "type": "string", - "required": true, - "location": "path" - } - }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], + "parameters": { + "projectId": { + "type": "string", + "required": true, + "location": "path", + "description": "The project to send the WorkerMessages to." + } + }, "flatPath": "v1b3/projects/{projectId}/WorkerMessages", - "path": "v1b3/projects/{projectId}/WorkerMessages", - "id": "dataflow.projects.workerMessages" + "id": "dataflow.projects.workerMessages", + "path": "v1b3/projects/{projectId}/WorkerMessages" } }, "resources": { - "locations": { + "jobs": { "methods": { - "workerMessages": { - "request": { - "$ref": "SendWorkerMessagesRequest" + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListJobsResponse" }, - "description": "Send a worker_message to the service.", - "httpMethod": "POST", "parameterOrder": [ - "projectId", - "location" + "projectId" ], - "response": { - "$ref": "SendWorkerMessagesResponse" - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -56,119 +65,274 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { + "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": { + "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", + "format": "int32", + "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.", + "type": "integer" + }, + "view": { + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", + "type": "string", + "location": "query" + }, + "projectId": { "location": "path", - "description": "The location which contains the job", + "description": "The project which owns the jobs.", "type": "string", "required": true + } + }, + "flatPath": "v1b3/projects/{projectId}/jobs", + "path": "v1b3/projects/{projectId}/jobs", + "id": "dataflow.projects.jobs.list", + "description": "List the jobs of a project." + }, + "get": { + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", + "id": "dataflow.projects.jobs.get", + "path": "v1b3/projects/{projectId}/jobs/{jobId}", + "description": "Gets the state of the specified Cloud Dataflow job.", + "response": { + "$ref": "Job" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "GET", + "parameters": { + "view": { + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "description": "The level of information requested in response.", + "type": "string", + "location": "query" + }, + "jobId": { + "description": "The job ID.", + "type": "string", + "required": true, + "location": "path" }, "projectId": { "location": "path", - "description": "The project to send the WorkerMessages to.", + "description": "The ID of the Cloud Platform project that the job belongs to.", "type": "string", "required": true + }, + "location": { + "location": "query", + "description": "The location that contains this job.", + "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", - "path": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", - "id": "dataflow.projects.locations.workerMessages" - } - }, - "resources": { - "templates": { - "methods": { - "get": { - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:get", - "id": "dataflow.projects.locations.templates.get", - "path": "v1b3/projects/{projectId}/locations/{location}/templates:get", - "description": "Get the template associated with a template.", - "response": { - "$ref": "GetTemplateResponse" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "GET", - "parameters": { - "view": { - "location": "query", - "enum": [ - "METADATA_ONLY" - ], - "description": "The view to retrieve. Defaults to METADATA_ONLY.", - "type": "string" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true - }, - "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.", - "type": "string", - "required": true, - "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" - ] + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "request": { + "$ref": "Job" + }, + "description": "Updates the state of an existing Cloud Dataflow job.", + "httpMethod": "PUT", + "parameterOrder": [ + "projectId", + "jobId" + ], + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "parameters": { + "jobId": { + "location": "path", + "description": "The job ID.", + "type": "string", + "required": true }, - "create": { - "id": "dataflow.projects.locations.templates.create", - "path": "v1b3/projects/{projectId}/locations/{location}/templates", - "description": "Creates a Cloud Dataflow job from a template.", - "request": { - "$ref": "CreateJobFromTemplateRequest" - }, - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "POST", - "parameters": { - "location": { - "location": "path", - "description": "The location to which to direct the request.", - "type": "string", - "required": true - }, - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true, - "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" + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "type": "string", + "required": true, + "location": "path" }, - "launch": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location" - ], + "location": { + "description": "The location that contains this job.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", + "path": "v1b3/projects/{projectId}/jobs/{jobId}", + "id": "dataflow.projects.jobs.update" + }, + "create": { + "flatPath": "v1b3/projects/{projectId}/jobs", + "id": "dataflow.projects.jobs.create", + "path": "v1b3/projects/{projectId}/jobs", + "request": { + "$ref": "Job" + }, + "description": "Creates a Cloud Dataflow job.", + "response": { + "$ref": "Job" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "parameters": { + "replaceJobId": { + "location": "query", + "description": "Deprecated. This field is now in the Job message.", + "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" + ] + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "type": "string", + "required": true, + "location": "path" + }, + "location": { + "description": "The location that contains this job.", + "type": "string", + "location": "query" + } + } + }, + "getMetrics": { + "description": "Request the job status.", + "response": { + "$ref": "JobMetrics" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "parameters": { + "location": { + "location": "query", + "description": "The location which contains the job specified by job_id.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", + "type": "string", + "location": "query" + }, + "jobId": { + "description": "The job to get messages for.", + "type": "string", + "required": true, + "location": "path" + }, + "projectId": { + "location": "path", + "description": "A project id.", + "type": "string", + "required": true + } + }, + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", + "id": "dataflow.projects.jobs.getMetrics", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics" + } + }, + "resources": { + "workItems": { + "methods": { + "reportStatus": { + "description": "Reports the status of dataflow WorkItems leased by a worker.", + "request": { + "$ref": "ReportWorkItemStatusRequest" + }, "response": { - "$ref": "LaunchTemplateResponse" + "$ref": "ReportWorkItemStatusResponse" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "POST", + "parameters": { + "jobId": { + "type": "string", + "required": true, + "location": "path", + "description": "The job which the WorkItem is part of." + }, + "projectId": { + "location": "path", + "description": "The project which owns the WorkItem's job.", + "type": "string", + "required": true + } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -176,98 +340,96 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", + "id": "dataflow.projects.jobs.workItems.reportStatus", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus" + }, + "lease": { + "description": "Leases a dataflow WorkItem to run.", + "request": { + "$ref": "LeaseWorkItemRequest" + }, + "response": { + "$ref": "LeaseWorkItemResponse" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "POST", "parameters": { - "location": { - "location": "path", - "description": "The location to which to direct the request.", + "jobId": { "type": "string", - "required": true - }, - "validateOnly": { - "description": "If true, the request is validated but not actually executed.\nDefaults to false.", - "type": "boolean", - "location": "query" + "required": true, + "location": "path", + "description": "Identifies the workflow job this worker belongs to." }, "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "description": "Identifies the project this worker belongs to.", "type": "string", "required": true, "location": "path" - }, - "gcsPath": { - "location": "query", - "description": "Required. A Cloud Storage path to the template from which to create\nthe job.\nMust be valid Cloud Storage URL, beginning with 'gs://'.", - "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch", - "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch", - "id": "dataflow.projects.locations.templates.launch", - "request": { - "$ref": "LaunchTemplateParameters" - }, - "description": "Launch a template." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", + "id": "dataflow.projects.jobs.workItems.lease", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease" } } }, - "jobs": { + "debug": { "methods": { - "getMetrics": { + "sendCapture": { + "request": { + "$ref": "SendDebugCaptureRequest" + }, + "description": "Send encoded debug capture data for component.", "response": { - "$ref": "JobMetrics" + "$ref": "SendDebugCaptureResponse" }, "parameterOrder": [ "projectId", - "location", "jobId" ], - "httpMethod": "GET", + "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": { "jobId": { - "description": "The job to get messages for.", + "location": "path", + "description": "The job id.", "type": "string", - "required": true, - "location": "path" + "required": true }, "projectId": { - "type": "string", - "required": true, "location": "path", - "description": "A project id." - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string", - "required": true, - "location": "path" - }, - "startTime": { - "format": "google-datetime", - "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", + "description": "The project id.", "type": "string", - "location": "query" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", - "id": "dataflow.projects.locations.jobs.getMetrics", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", - "description": "Request the job status." + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", + "id": "dataflow.projects.jobs.debug.sendCapture", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture" }, - "list": { - "description": "List the jobs of a project.", - "httpMethod": "GET", + "getConfig": { + "httpMethod": "POST", "parameterOrder": [ "projectId", - "location" + "jobId" ], "response": { - "$ref": "ListJobsResponse" + "$ref": "GetDebugConfigResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -276,93 +438,137 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { - "filter": { - "description": "The kind of filter to use.", + "jobId": { + "location": "path", + "description": "The job id.", "type": "string", - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ] + "required": true }, - "location": { + "projectId": { + "description": "The project id.", "type": "string", "required": true, - "location": "path", - "description": "The location that contains this job." + "location": "path" + } + }, + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", + "id": "dataflow.projects.jobs.debug.getConfig", + "request": { + "$ref": "GetDebugConfigRequest" + }, + "description": "Get encoded debug configuration for component. Not cacheable." + } + } + }, + "messages": { + "methods": { + "list": { + "description": "Request the job status.", + "httpMethod": "GET", + "parameterOrder": [ + "projectId", + "jobId" + ], + "response": { + "$ref": "ListJobMessagesResponse" + }, + "parameters": { + "location": { + "location": "query", + "description": "The location which contains the job specified by job_id.", + "type": "string" + }, + "endTime": { + "location": "query", + "format": "google-datetime", + "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", + "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": "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" }, "pageSize": { - "type": "integer", "location": "query", "format": "int32", - "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." + "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.", + "type": "integer" }, - "view": { + "minimumImportance": { + "description": "Filter to only get messages with importance \u003e= level", + "type": "string", "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" + "JOB_MESSAGE_IMPORTANCE_UNKNOWN", + "JOB_MESSAGE_DEBUG", + "JOB_MESSAGE_DETAILED", + "JOB_MESSAGE_BASIC", + "JOB_MESSAGE_WARNING", + "JOB_MESSAGE_ERROR" + ] }, "projectId": { - "description": "The project which owns the jobs.", + "description": "A project id.", "type": "string", "required": true, "location": "path" + }, + "jobId": { + "location": "path", + "description": "The job to get messages about.", + "type": "string", + "required": true } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs", - "id": "dataflow.projects.locations.jobs.list" - }, - "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}/jobs/{jobId}/messages", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "id": "dataflow.projects.jobs.messages.list" + } + } + } + } + }, + "locations": { + "resources": { + "templates": { + "methods": { + "create": { + "description": "Creates a Cloud Dataflow job from a template.", + "request": { + "$ref": "CreateJobFromTemplateRequest" + }, "response": { "$ref": "Job" }, "parameterOrder": [ "projectId", - "location", - "jobId" + "location" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { "location": { - "description": "The location that contains this job.", + "description": "The location to which to direct the request.", "type": "string", "required": true, "location": "path" }, - "view": { - "description": "The level of information requested in response.", - "type": "string", - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ] - }, - "jobId": { - "type": "string", - "required": true, - "location": "path", - "description": "The job ID." - }, "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.", "type": "string", "required": true } @@ -373,45 +579,47 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "id": "dataflow.projects.locations.jobs.get", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "description": "Gets the state of the specified Cloud Dataflow job." + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates", + "id": "dataflow.projects.locations.templates.create", + "path": "v1b3/projects/{projectId}/locations/{location}/templates" }, - "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.", + "launch": { + "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch", + "id": "dataflow.projects.locations.templates.launch", + "description": "Launch a template.", "request": { - "$ref": "Job" - }, - "response": { - "$ref": "Job" + "$ref": "LaunchTemplateParameters" }, + "httpMethod": "POST", "parameterOrder": [ "projectId", - "location", - "jobId" + "location" ], - "httpMethod": "PUT", + "response": { + "$ref": "LaunchTemplateResponse" + }, "parameters": { - "jobId": { - "description": "The job ID.", + "location": { + "description": "The location to which to direct the request.", "type": "string", "required": true, "location": "path" }, + "validateOnly": { + "description": "If true, the request is validated but not actually executed.\nDefaults to false.", + "type": "boolean", + "location": "query" + }, "projectId": { - "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.", "type": "string", "required": true, "location": "path" }, - "location": { + "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", - "required": true, - "location": "path", - "description": "The location that contains this job." + "location": "query" } }, "scopes": [ @@ -420,351 +628,647 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}" + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch" }, - "create": { - "description": "Creates a Cloud Dataflow job.", - "request": { - "$ref": "Job" - }, + "get": { + "httpMethod": "GET", "response": { - "$ref": "Job" + "$ref": "GetTemplateResponse" }, "parameterOrder": [ "projectId", "location" ], - "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], "parameters": { "location": { - "description": "The location that contains this job.", "type": "string", "required": true, - "location": "path" - }, - "replaceJobId": { - "description": "Deprecated. This field is now in the Job message.", - "type": "string", - "location": "query" + "location": "path", + "description": "The location to which to direct the request." }, "view": { + "type": "string", + "location": "query", "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" + "METADATA_ONLY" ], - "description": "The level of information requested in response.", - "type": "string", - "location": "query" + "description": "The view to retrieve. Defaults to METADATA_ONLY." }, "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.", "type": "string", "required": true + }, + "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}/locations/{location}/jobs", - "id": "dataflow.projects.locations.jobs.create", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs" + "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." } - }, - "resources": { - "workItems": { - "methods": { - "lease": { - "description": "Leases a dataflow WorkItem to run.", - "request": { - "$ref": "LeaseWorkItemRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "response": { - "$ref": "LeaseWorkItemResponse" - }, - "parameters": { - "jobId": { - "location": "path", - "description": "Identifies the workflow job this worker belongs to.", - "type": "string", - "required": true - }, - "projectId": { - "description": "Identifies the project this worker belongs to.", - "type": "string", - "required": true, - "location": "path" - }, - "location": { - "location": "path", - "description": "The location which contains the WorkItem's job.", - "type": "string", - "required": true - } - }, - "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" + } + }, + "jobs": { + "methods": { + "list": { + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "id": "dataflow.projects.locations.jobs.list", + "description": "List the jobs of a project.", + "httpMethod": "GET", + "response": { + "$ref": "ListJobsResponse" + }, + "parameterOrder": [ + "projectId", + "location" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The project which owns the jobs.", + "type": "string", + "required": true }, - "reportStatus": { - "request": { - "$ref": "ReportWorkItemStatusRequest" - }, - "description": "Reports the status of dataflow WorkItems leased by a worker.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location", - "jobId" + "filter": { + "location": "query", + "enum": [ + "UNKNOWN", + "ALL", + "TERMINATED", + "ACTIVE" ], - "response": { - "$ref": "ReportWorkItemStatusResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" + "description": "The kind of filter to use.", + "type": "string" + }, + "location": { + "location": "path", + "description": "The location that contains this job.", + "type": "string", + "required": true + }, + "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", + "format": "int32", + "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.", + "type": "integer" + }, + "view": { + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" ], - "parameters": { - "jobId": { - "location": "path", - "description": "The job which the WorkItem is part of.", - "type": "string", - "required": true - }, - "projectId": { - "location": "path", - "description": "The project which owns the WorkItem's job.", - "type": "string", - "required": true - }, - "location": { - "description": "The location which contains the WorkItem's job.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", + "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" }, - "debug": { - "methods": { - "sendCapture": { - "response": { - "$ref": "SendDebugCaptureResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "jobId": { - "location": "path", - "description": "The job id.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The project id.", - "type": "string", - "required": true, - "location": "path" - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", - "id": "dataflow.projects.locations.jobs.debug.sendCapture", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", - "description": "Send encoded debug capture data for component.", - "request": { - "$ref": "SendDebugCaptureRequest" - } + "get": { + "description": "Gets the state of the specified Cloud Dataflow job.", + "httpMethod": "GET", + "response": { + "$ref": "Job" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "parameters": { + "location": { + "type": "string", + "required": true, + "location": "path", + "description": "The location that contains this job." }, - "getConfig": { - "description": "Get encoded debug configuration for component. Not cacheable.", - "request": { - "$ref": "GetDebugConfigRequest" - }, - "response": { - "$ref": "GetDebugConfigResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "jobId": { - "description": "The job id.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The project id.", - "type": "string", - "required": true, - "location": "path" - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string", - "required": true, - "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" + "view": { + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", - "id": "dataflow.projects.locations.jobs.debug.getConfig", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig" + "description": "The level of information requested in response.", + "type": "string" + }, + "jobId": { + "type": "string", + "required": true, + "location": "path", + "description": "The job ID." + }, + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "type": "string", + "required": true, + "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}", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "id": "dataflow.projects.locations.jobs.get" }, - "messages": { - "methods": { - "list": { - "description": "Request the job status.", - "response": { - "$ref": "ListJobMessagesResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "GET", - "scopes": [ + "update": { + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "id": "dataflow.projects.locations.jobs.update", + "description": "Updates the state of an existing Cloud Dataflow job.", + "request": { + "$ref": "Job" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "response": { + "$ref": "Job" + }, + "parameters": { + "jobId": { + "location": "path", + "description": "The job ID.", + "type": "string", + "required": true + }, + "projectId": { + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to.", + "type": "string", + "required": true + }, + "location": { + "location": "path", + "description": "The location that contains this job.", + "type": "string", + "required": true + } + }, + "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}" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "location" + ], + "response": { + "$ref": "Job" + }, + "parameters": { + "replaceJobId": { + "description": "Deprecated. This field is now in the Job message.", + "type": "string", + "location": "query" + }, + "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" + ] + }, + "projectId": { + "type": "string", + "required": true, + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to." + }, + "location": { + "description": "The location that contains this job.", + "type": "string", + "required": true, + "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", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "id": "dataflow.projects.locations.jobs.create", + "description": "Creates a Cloud Dataflow job.", + "request": { + "$ref": "Job" + } + }, + "getMetrics": { + "response": { + "$ref": "JobMetrics" + }, + "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": { + "jobId": { + "description": "The job to get messages for.", + "type": "string", + "required": true, + "location": "path" + }, + "projectId": { + "type": "string", + "required": true, + "location": "path", + "description": "A project id." + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "type": "string", + "required": true, + "location": "path" + }, + "startTime": { + "location": "query", + "format": "google-datetime", + "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", + "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", + "description": "Request the job status." + } + }, + "resources": { + "workItems": { + "methods": { + "reportStatus": { + "response": { + "$ref": "ReportWorkItemStatusResponse" + }, + "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": { - "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": { - "location": "query", - "format": "google-datetime", - "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages).", - "type": "string" - }, - "pageSize": { - "format": "int32", - "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.", - "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" - ] - }, "jobId": { "location": "path", - "description": "The job to get messages about.", + "description": "The job which the WorkItem is part of.", "type": "string", "required": true }, "projectId": { "location": "path", - "description": "A project id.", + "description": "The project which owns the WorkItem's job.", "type": "string", "required": true }, - "endTime": { - "format": "google-datetime", - "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", + "location": { + "location": "path", + "description": "The location which contains the WorkItem's job.", "type": "string", - "location": "query" + "required": true + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", + "id": "dataflow.projects.locations.jobs.workItems.reportStatus", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", + "request": { + "$ref": "ReportWorkItemStatusRequest" + }, + "description": "Reports the status of dataflow WorkItems leased by a worker." + }, + "lease": { + "response": { + "$ref": "LeaseWorkItemResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "httpMethod": "POST", + "parameters": { + "jobId": { + "location": "path", + "description": "Identifies the workflow job this worker belongs to.", + "type": "string", + "required": true }, - "location": { - "description": "The location which contains the job specified by job_id.", + "projectId": { "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "Identifies the project this worker belongs to." + }, + "location": { + "location": "path", + "description": "The location which contains the WorkItem's job.", + "type": "string", + "required": true } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", - "id": "dataflow.projects.locations.jobs.messages.list", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages" + "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", + "id": "dataflow.projects.locations.jobs.workItems.lease", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", + "description": "Leases a dataflow WorkItem to run.", + "request": { + "$ref": "LeaseWorkItemRequest" + } } } - } - } - } - } - }, - "templates": { - "methods": { - "get": { - "path": "v1b3/projects/{projectId}/templates:get", - "id": "dataflow.projects.templates.get", - "description": "Get the template associated with a template.", - "httpMethod": "GET", + }, + "debug": { + "methods": { + "sendCapture": { + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", + "id": "dataflow.projects.locations.jobs.debug.sendCapture", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", + "request": { + "$ref": "SendDebugCaptureRequest" + }, + "description": "Send encoded debug capture data for component.", + "response": { + "$ref": "SendDebugCaptureResponse" + }, + "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": { + "jobId": { + "location": "path", + "description": "The job id.", + "type": "string", + "required": true + }, + "projectId": { + "description": "The project id.", + "type": "string", + "required": true, + "location": "path" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "type": "string", + "required": true, + "location": "path" + } + } + }, + "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": { + "jobId": { + "location": "path", + "description": "The job id.", + "type": "string", + "required": true + }, + "projectId": { + "location": "path", + "description": "The project id.", + "type": "string", + "required": true + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", + "id": "dataflow.projects.locations.jobs.debug.getConfig", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", + "request": { + "$ref": "GetDebugConfigRequest" + }, + "description": "Get encoded debug configuration for component. Not cacheable." + } + } + }, + "messages": { + "methods": { + "list": { + "response": { + "$ref": "ListJobMessagesResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "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" + }, + "startTime": { + "type": "string", + "location": "query", + "format": "google-datetime", + "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages)." + }, + "pageSize": { + "format": "int32", + "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.", + "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" + ] + }, + "jobId": { + "location": "path", + "description": "The job to get messages about.", + "type": "string", + "required": true + }, + "projectId": { + "location": "path", + "description": "A project id.", + "type": "string", + "required": true + }, + "endTime": { + "type": "string", + "location": "query", + "format": "google-datetime", + "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available)." + }, + "location": { + "location": "path", + "description": "The location which contains the job specified by job_id.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "id": "dataflow.projects.locations.jobs.messages.list", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "description": "Request the job status." + } + } + } + } + } + }, + "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.", + "httpMethod": "POST", "parameterOrder": [ - "projectId" + "projectId", + "location" ], "response": { - "$ref": "GetTemplateResponse" + "$ref": "SendWorkerMessagesResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ], "parameters": { "location": { - "description": "The location to which to direct the request.", + "description": "The location which contains the job", "type": "string", - "location": "query" + "required": true, + "location": "path" }, + "projectId": { + "location": "path", + "description": "The project to send the WorkerMessages to.", + "type": "string", + "required": true + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages" + } + } + }, + "templates": { + "methods": { + "get": { + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "GetTemplateResponse" + }, + "parameters": { "view": { "location": "query", "enum": [ @@ -780,8 +1284,13 @@ "location": "path" }, "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": "query" + }, + "location": { + "location": "query", + "description": "The location to which to direct the request.", "type": "string" } }, @@ -790,14 +1299,16 @@ "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" + ] }, "create": { - "description": "Creates a Cloud Dataflow job from a template.", + "flatPath": "v1b3/projects/{projectId}/templates", + "id": "dataflow.projects.templates.create", + "path": "v1b3/projects/{projectId}/templates", "request": { "$ref": "CreateJobFromTemplateRequest" }, + "description": "Creates a Cloud Dataflow job from a template.", "response": { "$ref": "Job" }, @@ -805,25 +1316,26 @@ "projectId" ], "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true - } - }, "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", - "id": "dataflow.projects.templates.create", - "path": "v1b3/projects/{projectId}/templates" + "parameters": { + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "type": "string", + "required": true, + "location": "path" + } + } }, "launch": { + "request": { + "$ref": "LaunchTemplateParameters" + }, + "description": "Launch a template.", "response": { "$ref": "LaunchTemplateResponse" }, @@ -831,171 +1343,6 @@ "projectId" ], "httpMethod": "POST", - "parameters": { - "location": { - "description": "The location to which to direct the request.", - "type": "string", - "location": "query" - }, - "validateOnly": { - "description": "If true, the request is validated but not actually executed.\nDefaults to false.", - "type": "boolean", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true - }, - "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" - } - }, - "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", - "id": "dataflow.projects.templates.launch", - "path": "v1b3/projects/{projectId}/templates:launch", - "description": "Launch a template.", - "request": { - "$ref": "LaunchTemplateParameters" - } - } - } - }, - "jobs": { - "methods": { - "list": { - "description": "List the jobs of a project.", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "The project which owns the jobs." - }, - "filter": { - "description": "The kind of filter to use.", - "type": "string", - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ] - }, - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - }, - "pageToken": { - "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", - "format": "int32", - "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.", - "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" - } - }, - "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", - "id": "dataflow.projects.jobs.list", - "path": "v1b3/projects/{projectId}/jobs" - }, - "get": { - "description": "Gets the state of the specified Cloud Dataflow job.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "Job" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - }, - "view": { - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response.", - "type": "string", - "location": "query" - }, - "jobId": { - "location": "path", - "description": "The job ID.", - "type": "string", - "required": true - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.get" - }, - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "Job" - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -1003,1136 +1350,556 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { - "jobId": { - "description": "The job ID.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the Cloud Platform project that the job belongs to." - }, "location": { "location": "query", - "description": "The location that contains this job.", - "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.update", - "request": { - "$ref": "Job" - }, - "description": "Updates the state of an existing Cloud Dataflow job." - }, - "create": { - "flatPath": "v1b3/projects/{projectId}/jobs", - "path": "v1b3/projects/{projectId}/jobs", - "id": "dataflow.projects.jobs.create", - "request": { - "$ref": "Job" - }, - "description": "Creates a Cloud Dataflow job.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "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": { - "replaceJobId": { - "location": "query", - "description": "Deprecated. This field is now in the Job message.", + "description": "The location to which to direct the request.", "type": "string" }, - "view": { - "type": "string", + "validateOnly": { "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response." + "description": "If true, the request is validated but not actually executed.\nDefaults to false.", + "type": "boolean" }, "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", - "type": "string", - "required": true, - "location": "path" - }, - "location": { - "location": "query", - "description": "The location that contains this job.", - "type": "string" - } - } - }, - "getMetrics": { - "id": "dataflow.projects.jobs.getMetrics", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", - "description": "Request the job status.", - "response": { - "$ref": "JobMetrics" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "jobId": { "location": "path", - "description": "The job to get messages for.", + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", "type": "string", "required": true - }, - "projectId": { - "description": "A project id.", - "type": "string", - "required": true, - "location": "path" - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string", - "location": "query" - }, - "startTime": { - "location": "query", - "format": "google-datetime", - "description": "Return only metric data that has changed since this time.\nDefault is to return all information about all metrics for the job.", - "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/metrics" - } - }, - "resources": { - "workItems": { - "methods": { - "lease": { - "response": { - "$ref": "LeaseWorkItemResponse" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "jobId": { - "type": "string", - "required": true, - "location": "path", - "description": "Identifies the workflow job this worker belongs to." - }, - "projectId": { - "description": "Identifies the project this worker belongs to.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", - "id": "dataflow.projects.jobs.workItems.lease", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", - "description": "Leases a dataflow WorkItem to run.", - "request": { - "$ref": "LeaseWorkItemRequest" - } - }, - "reportStatus": { - "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": { - "jobId": { - "description": "The job which the WorkItem is part of.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The project which owns the WorkItem's job.", - "type": "string", - "required": true, - "location": "path" - } - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "ReportWorkItemStatusResponse" - } - } - } - }, - "debug": { - "methods": { - "sendCapture": { - "description": "Send encoded debug capture data for component.", - "request": { - "$ref": "SendDebugCaptureRequest" - }, - "response": { - "$ref": "SendDebugCaptureResponse" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "jobId": { - "description": "The job id.", - "type": "string", - "required": true, - "location": "path" - }, - "projectId": { - "description": "The project id.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", - "id": "dataflow.projects.jobs.debug.sendCapture", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture" - }, - "getConfig": { - "request": { - "$ref": "GetDebugConfigRequest" - }, - "description": "Get encoded debug configuration for component. Not cacheable.", - "response": { - "$ref": "GetDebugConfigResponse" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "jobId": { - "type": "string", - "required": true, - "location": "path", - "description": "The job id." - }, - "projectId": { - "location": "path", - "description": "The project id.", - "type": "string", - "required": true - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", - "id": "dataflow.projects.jobs.debug.getConfig", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig" - } - } - }, - "messages": { - "methods": { - "list": { - "description": "Request the job status.", - "response": { - "$ref": "ListJobMessagesResponse" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly", - "https://www.googleapis.com/auth/userinfo.email" - ], - "parameters": { - "projectId": { - "description": "A project id.", - "type": "string", - "required": true, - "location": "path" - }, - "jobId": { - "location": "path", - "description": "The job to get messages about.", - "type": "string", - "required": true - }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string", - "location": "query" - }, - "endTime": { - "location": "query", - "format": "google-datetime", - "description": "Return only messages with timestamps \u003c end_time. The default is now\n(i.e. return up to the latest messages available).", - "type": "string" - }, - "startTime": { - "type": "string", - "location": "query", - "format": "google-datetime", - "description": "If specified, return only messages with timestamps \u003e= start_time.\nThe default is the job creation time (i.e. beginning of messages)." - }, - "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" - }, - "pageSize": { - "format": "int32", - "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.", - "type": "integer", - "location": "query" - }, - "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" - } - }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/messages", - "id": "dataflow.projects.jobs.messages.list", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages" - } - } - } - } - } - } - } - }, - "parameters": { - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "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": { - "enumDescriptions": [ - "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" - } - }, - "schemas": { - "CustomSourceLocation": { - "description": "Identifies the location of a custom souce.", - "type": "object", - "properties": { - "stateful": { - "description": "Whether this source is stateful.", - "type": "boolean" - } - }, - "id": "CustomSourceLocation" - }, - "MapTask": { - "description": "MapTask consists of an ordered set of instructions, each of which\ndescribes one particular low-level operation for the worker to\nperform in order to accomplish the MapTask's WorkItem.\n\nEach instruction must appear in the list before any instructions which\ndepends on its output.", - "type": "object", - "properties": { - "stageName": { - "description": "System-defined name of the stage containing this MapTask.\nUnique across the workflow.", - "type": "string" - }, - "systemName": { - "description": "System-defined name of this MapTask.\nUnique across the workflow.", - "type": "string" - }, - "instructions": { - "description": "The instructions in the MapTask.", - "items": { - "$ref": "ParallelInstruction" - }, - "type": "array" - } - }, - "id": "MapTask" - }, - "FloatingPointMean": { - "properties": { - "count": { - "$ref": "SplitInt64", - "description": "The number of values being aggregated." - }, - "sum": { - "format": "double", - "description": "The sum of all values being aggregated.", - "type": "number" - } - }, - "id": "FloatingPointMean", - "description": "A representation of a floating point mean metric contribution.", - "type": "object" - }, - "ReportWorkItemStatusResponse": { - "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.", - "items": { - "$ref": "WorkItemServiceState" - }, - "type": "array" - } - }, - "id": "ReportWorkItemStatusResponse", - "description": "Response from a request to report the status of WorkItems." - }, - "InstructionOutput": { - "description": "An output of an instruction.", - "type": "object", - "properties": { - "systemName": { - "description": "System-defined name of this output.\nUnique across the workflow.", - "type": "string" - }, - "onlyCountKeyBytes": { - "type": "boolean", - "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the key size." - }, - "onlyCountValueBytes": { - "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the value size.", - "type": "boolean" - }, - "codec": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The codec to use to encode data being written via this output." - }, - "name": { - "description": "The user-provided name of this output.", - "type": "string" - }, - "originalName": { - "description": "System-defined name for this output in the original workflow graph.\nOutputs that do not contribute to an original instruction do not set this.", - "type": "string" + }, + "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" + } + }, + "flatPath": "v1b3/projects/{projectId}/templates:launch", + "id": "dataflow.projects.templates.launch", + "path": "v1b3/projects/{projectId}/templates:launch" + } + } } - }, - "id": "InstructionOutput" + } + } + }, + "parameters": { + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" }, - "CreateJobFromTemplateRequest": { - "properties": { - "environment": { - "$ref": "RuntimeEnvironment", - "description": "The runtime environment for the job." - }, - "location": { - "description": "The location to which to direct the request.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "type": "string" - }, - "description": "The runtime parameters to pass to the job.", - "type": "object" - }, - "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", - "description": "A request to create a Cloud Dataflow job from a template.", - "type": "object" + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, - "IntegerMean": { - "type": "object", - "properties": { - "count": { - "$ref": "SplitInt64", - "description": "The number of values being aggregated." - }, - "sum": { - "$ref": "SplitInt64", - "description": "The sum of all values being aggregated." - } - }, - "id": "IntegerMean", - "description": "A representation of an integer mean metric contribution." + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "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": { - "jobs": { - "description": "A subset of the requested job information.", - "items": { - "$ref": "Job" - }, - "type": "array" - }, - "failedLocation": { - "items": { - "$ref": "FailedLocation" - }, - "type": "array", - "description": "Zero or more messages describing locations that failed to respond." - }, - "nextPageToken": { - "description": "Set if there may be more results than fit in this response.", - "type": "string" - } - }, - "id": "ListJobsResponse" + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "ComputationTopology": { - "id": "ComputationTopology", - "description": "All configuration data for a particular Computation.", - "type": "object", - "properties": { - "stateFamilies": { - "description": "The state family values.", - "items": { - "$ref": "StateFamilyConfig" - }, - "type": "array" - }, - "outputs": { - "description": "The outputs from the computation.", - "items": { - "$ref": "StreamLocation" - }, - "type": "array" - }, - "systemStageName": { - "description": "The system stage name.", - "type": "string" - }, - "computationId": { - "description": "The ID of the computation.", - "type": "string" - }, - "inputs": { - "description": "The inputs to the computation.", - "items": { - "$ref": "StreamLocation" - }, - "type": "array" - }, - "keyRanges": { - "description": "The key ranges processed by the computation.", - "items": { - "$ref": "KeyRangeLocation" - }, - "type": "array" - } - } + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "RuntimeEnvironment": { - "id": "RuntimeEnvironment", - "description": "The environment values to set at runtime.", - "type": "object", - "properties": { - "maxWorkers": { - "format": "int32", - "description": "The maximum number of Google Compute Engine instances to be made\navailable to your pipeline during execution, from 1 to 1000.", - "type": "integer" - }, - "serviceAccountEmail": { - "description": "The email address of the service account to run the job as.", - "type": "string" - }, - "tempLocation": { - "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", - "type": "string" - }, - "bypassTempDirValidation": { - "description": "Whether to bypass the safety checks for the job's temporary directory.\nUse with caution.", - "type": "boolean" - }, - "machineType": { - "description": "The machine type to use for the job. Defaults to the value from the\ntemplate if not specified.", - "type": "string" - }, - "zone": { - "description": "The Compute Engine [availability\nzone](https://cloud.google.com/compute/docs/regions-zones/regions-zones)\nfor launching worker instances to run your pipeline.", - "type": "string" - } - } + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "StreamingSideInputLocation": { - "description": "Identifies the location of a streaming side input.", - "type": "object", - "properties": { - "stateFamily": { - "description": "Identifies the state family where this side input is stored.", - "type": "string" - }, - "tag": { - "type": "string", - "description": "Identifies the particular side input within the streaming Dataflow job." - } - }, - "id": "StreamingSideInputLocation" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "MountedDataDisk": { - "type": "object", - "properties": { - "dataDisk": { - "description": "The name of the data disk.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", - "type": "string" - } - }, - "id": "MountedDataDisk", - "description": "Describes mounted data disk." + "$.xgafv": { + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ] }, - "LaunchTemplateResponse": { - "description": "Response to the request to launch a template.", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched." - } - }, - "id": "LaunchTemplateResponse" + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "Job": { - "description": "Defines a job to be run by the Cloud Dataflow service.", - "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" + }, + "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" + } + }, + "schemas": { + "StructuredMessage": { "properties": { - "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": { - "additionalProperties": { - "type": "string" - }, - "description": "User-defined labels for this job.\n\nThe labels map can contain no more than 64 entries. Entries of the labels\nmap are UTF8 strings that comply with the following restrictions:\n\n* Keys must conform to regexp: \\p{Ll}\\p{Lo}{0,62}\n* Values must conform to regexp: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n* Both keys and values are additionally constrained to be \u003c= 128 bytes in\nsize.", - "type": "object" - }, - "environment": { - "$ref": "Environment", - "description": "The environment for the job." - }, - "createTime": { - "format": "google-datetime", - "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", + "messageText": { + "description": "Human-readable version of message.", "type": "string" }, - "stageStates": { - "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", + "parameters": { + "description": "The structured data associated with this message.", "items": { - "$ref": "ExecutionStageState" + "$ref": "Parameter" }, "type": "array" }, - "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.", + "messageKey": { + "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", "type": "string" + } + }, + "id": "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" + }, + "WorkItem": { + "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", + "type": "object", + "properties": { + "streamingComputationTask": { + "$ref": "StreamingComputationTask", + "description": "Additional information for StreamingComputationTask WorkItems." }, - "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" + "shellTask": { + "$ref": "ShellTask", + "description": "Additional information for ShellTask WorkItems." }, - "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.", + "jobId": { + "description": "Identifies the workflow job this WorkItem belongs to.", "type": "string" }, - "requestedState": { - "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 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." - }, - "tempFiles": { - "description": "A set of files the system should be aware of that are used\nfor temporary storage. These temporary files will be\nremoved on job completion.\nNo duplicates are allowed.\nNo file patterns are supported.\n\nThe supported files are:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "items": { - "type": "string" - }, - "type": "array" - }, - "clientRequestId": { + "id": { "type": "string", - "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." + "format": "int64", + "description": "Identifies this WorkItem." }, - "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])?`", + "configuration": { + "description": "Work item-specific configuration as an opaque blob.", "type": "string" }, - "replacedByJobId": { - "description": "If another job is an update of this job (and thus, this job is in\n`JOB_STATE_UPDATED`), this field contains the ID of that job.", - "type": "string" + "mapTask": { + "$ref": "MapTask", + "description": "Additional information for MapTask WorkItems." }, - "steps": { - "description": "The top-level steps that constitute the entire job.", + "seqMapTask": { + "$ref": "SeqMapTask", + "description": "Additional information for SeqMapTask WorkItems." + }, + "packages": { + "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", "items": { - "$ref": "Step" + "$ref": "Package" }, "type": "array" }, - "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" + "projectId": { + "type": "string", + "description": "Identifies the cloud project this WorkItem belongs to." }, - "executionInfo": { - "description": "Deprecated.", - "$ref": "JobExecutionInfo" + "sourceOperationTask": { + "$ref": "SourceOperationRequest", + "description": "Additional information for source operation WorkItems." }, - "currentState": { - "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.", - "type": "string" + "streamingSetupTask": { + "description": "Additional information for StreamingSetupTask WorkItems.", + "$ref": "StreamingSetupTask" }, - "location": { + "reportStatusInterval": { "type": "string", - "description": "The location that contains this job." + "format": "google-duration", + "description": "Recommended reporting interval." }, - "currentStateTime": { + "streamingConfigTask": { + "$ref": "StreamingConfigTask", + "description": "Additional information for StreamingConfigTask WorkItems." + }, + "leaseExpireTime": { "format": "google-datetime", - "description": "The timestamp associated with the current state.", + "description": "Time when the lease on this Work will expire.", + "type": "string" + }, + "initialReportIndex": { + "format": "int64", + "description": "The initial index to use when reporting the status of the WorkItem.", "type": "string" } }, - "id": "Job" + "id": "WorkItem" }, - "DynamicSourceSplit": { + "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": { - "residual": { - "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source.", - "$ref": "DerivedSource" + "cpuTime": { + "description": "CPU utilization samples.", + "items": { + "$ref": "CPUTime" + }, + "type": "array" + } + }, + "id": "ResourceUtilizationReport" + }, + "ReportedParallelism": { + "description": "Represents the level of parallelism in a WorkItem's input,\nreported by the worker.", + "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" }, - "primary": { - "$ref": "DerivedSource", - "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current." + "value": { + "format": "double", + "description": "Specifies the level of parallelism in case it is finite.", + "type": "number" } }, - "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." + "id": "ReportedParallelism" }, - "DerivedSource": { + "TopologyConfig": { + "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations.", + "type": "object", "properties": { - "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 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." - ] + "persistentStateVersion": { + "format": "int32", + "description": "Version number for persistent state.", + "type": "integer" }, - "source": { - "$ref": "Source", - "description": "Specification of the source." + "dataDiskAssignments": { + "description": "The disks assigned to a streaming Dataflow job.", + "items": { + "$ref": "DataDiskAssignment" + }, + "type": "array" + }, + "forwardingKeyBits": { + "format": "int32", + "description": "The size (in bits) of keys that will be assigned to source messages.", + "type": "integer" + }, + "userStageToComputationNameMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Maps user stage names to stable computation names.", + "type": "object" + }, + "computations": { + "description": "The computations associated with a streaming Dataflow job.", + "items": { + "$ref": "ComputationTopology" + }, + "type": "array" } }, - "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.", - "type": "object" + "id": "TopologyConfig" }, - "SourceOperationResponse": { - "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed.", + "SourceSplitOptions": { "type": "object", "properties": { - "getMetadata": { - "$ref": "SourceGetMetadataResponse", - "description": "A response to a request to get metadata about a source." + "desiredBundleSizeBytes": { + "format": "int64", + "description": "The source should be split into a set of bundles where the estimated size\nof each is approximately this many bytes.", + "type": "string" }, - "split": { - "$ref": "SourceSplitResponse", - "description": "A response to a request to split a source." + "desiredShardSizeBytes": { + "format": "int64", + "description": "DEPRECATED in favor of desired_bundle_size_bytes.", + "type": "string" } }, - "id": "SourceOperationResponse" + "id": "SourceSplitOptions", + "description": "Hints for splitting a Source into bundles (parts for parallel\nprocessing) using SourceSplitRequest." }, - "SendDebugCaptureResponse": { - "properties": {}, - "id": "SendDebugCaptureResponse", - "description": "Response to a send capture request.\nnothing", - "type": "object" + "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": "ReadInstruction" }, - "SideInputInfo": { - "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", + "WorkerSettings": { + "description": "Provides data to pass through to the worker harness.", "type": "object", "properties": { - "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.", + "workerId": { + "description": "The ID of the worker running this pipeline.", "type": "string" }, - "kind": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "How to interpret the source element(s) as a side input value." + "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" }, - "sources": { - "description": "The source(s) to read element(s) from to get the value of this side input.\nIf more than one source, then the elements are taken from the\nsources, in the specified order if order matters.\nAt least one source is required.", - "items": { - "$ref": "Source" - }, - "type": "array" + "baseUrl": { + "description": "The base URL for accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", + "type": "string" + }, + "reportingEnabled": { + "description": "Whether to send work progress updates to the service.", + "type": "boolean" + }, + "servicePath": { + "description": "The Cloud Dataflow service path relative to the root URL, for example,\n\"dataflow/v1b3/projects\".", + "type": "string" + }, + "shuffleServicePath": { + "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\".", + "type": "string" } }, - "id": "SideInputInfo" + "id": "WorkerSettings" }, - "CounterStructuredNameAndMetadata": { + "DataDiskAssignment": { + "description": "Data disk assignment for a given VM instance.", + "type": "object", "properties": { - "metadata": { - "$ref": "CounterMetadata", - "description": "Metadata associated with a counter" + "vmInstance": { + "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", + "type": "string" }, - "name": { - "description": "Structured name of the counter.", - "$ref": "CounterStructuredName" + "dataDisks": { + "description": "Mounted data disks. The order is important a data disk's 0-based index in\nthis list defines which persistent directory the disk is mounted to, for\nexample the list of { \"myproject-1014-104817-4c2-harness-0-disk-0\" },\n{ \"myproject-1014-104817-4c2-harness-0-disk-1\" }.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "CounterStructuredNameAndMetadata", - "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", - "type": "object" + "id": "DataDiskAssignment" }, - "ConcatPosition": { + "StreamingStageLocation": { + "description": "Identifies the location of a streaming computation stage, for\nstage-to-stage communication.", "type": "object", "properties": { - "position": { - "description": "Position within the inner source.", - "$ref": "Position" - }, - "index": { - "format": "int32", - "description": "Index of the inner source.", - "type": "integer" + "streamId": { + "description": "Identifies the particular stream within the streaming Dataflow\njob.", + "type": "string" } }, - "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." + "id": "StreamingStageLocation" }, - "WriteInstruction": { - "description": "An instruction that writes records.\nTakes one input, produces no outputs.", + "ApproximateSplitRequest": { + "description": "A suggestion by the service to the worker to dynamically split the WorkItem.", "type": "object", "properties": { - "input": { - "$ref": "InstructionInput", - "description": "The input." + "position": { + "$ref": "Position", + "description": "A Position at which to split the work item." }, - "sink": { - "$ref": "Sink", - "description": "The sink to write to." + "fractionConsumed": { + "format": "double", + "description": "A fraction at which to split the work item, from 0.0 (beginning of the\ninput) to 1.0 (end of the input).", + "type": "number" } }, - "id": "WriteInstruction" + "id": "ApproximateSplitRequest" }, - "StreamingComputationRanges": { - "description": "Describes full or partial data disk assignment information of the computation\nranges.", - "type": "object", + "Status": { "properties": { - "rangeAssignments": { - "description": "Data disk assignments for ranges from this computation.", + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "$ref": "KeyRangeDataDiskAssignment" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } }, "type": "array" }, - "computationId": { - "description": "The ID of the computation.", + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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": "StreamingComputationRanges" + "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" }, - "AutoscalingSettings": { + "ExecutionStageState": { + "description": "A message describing the state of a particular execution stage.", "type": "object", "properties": { - "maxNumWorkers": { - "format": "int32", - "description": "The maximum number of workers to cap scaling at.", - "type": "integer" - }, - "algorithm": { + "executionStageState": { "enum": [ - "AUTOSCALING_ALGORITHM_UNKNOWN", - "AUTOSCALING_ALGORITHM_NONE", - "AUTOSCALING_ALGORITHM_BASIC" + "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 algorithm to use for autoscaling.", + "description": "Executions stage states allow the same set of values as JobState.", "type": "string", "enumDescriptions": [ - "The algorithm is unknown, or unspecified.", - "Disable autoscaling.", - "Increase worker count over time to reduce job execution time." + "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'." ] + }, + "executionStageName": { + "description": "The name of the execution stage.", + "type": "string" + }, + "currentStateTime": { + "format": "google-datetime", + "description": "The time at which the stage transitioned to this state.", + "type": "string" } }, - "id": "AutoscalingSettings", - "description": "Settings for WorkerPool autoscaling." + "id": "ExecutionStageState" }, - "ExecutionStageSummary": { + "StreamLocation": { + "properties": { + "customSourceLocation": { + "$ref": "CustomSourceLocation", + "description": "The stream is a custom source." + }, + "sideInputLocation": { + "description": "The stream is a streaming side input.", + "$ref": "StreamingSideInputLocation" + }, + "pubsubLocation": { + "$ref": "PubsubLocation", + "description": "The stream is a pubsub stream." + }, + "streamingStageLocation": { + "description": "The stream is part of another computation within the current\nstreaming Dataflow job.", + "$ref": "StreamingStageLocation" + } + }, + "id": "StreamLocation", + "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", + "type": "object" + }, + "SendWorkerMessagesResponse": { + "description": "The response to the worker messages.", "type": "object", "properties": { - "outputSource": { - "description": "Output sources for this stage.", + "workerMessageResponses": { "items": { - "$ref": "StageSource" + "$ref": "WorkerMessageResponse" }, - "type": "array" + "type": "array", + "description": "The servers response to the worker messages." + } + }, + "id": "SendWorkerMessagesResponse" + }, + "StreamingComputationConfig": { + "description": "Configuration information for a single streaming computation.", + "type": "object", + "properties": { + "computationId": { + "description": "Unique identifier for this computation.", + "type": "string" }, - "name": { - "description": "Dataflow service generated name for this stage.", + "stageName": { + "description": "Stage name of this computation.", "type": "string" }, - "inputSource": { - "description": "Input sources for this stage.", + "systemName": { + "description": "System defined name for this computation.", + "type": "string" + }, + "instructions": { + "description": "Instructions that comprise the computation.", "items": { - "$ref": "StageSource" + "$ref": "ParallelInstruction" }, "type": "array" + } + }, + "id": "StreamingComputationConfig" + }, + "TransformSummary": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "User provided name for this transform instance." }, "id": { - "description": "Dataflow service generated id for this stage.", + "description": "SDK generated id of this transform instance.", "type": "string" }, - "componentTransform": { - "description": "Transforms that comprise this execution stage.", + "displayData": { + "description": "Transform-specific display data.", "items": { - "$ref": "ComponentTransform" + "$ref": "DisplayData" }, "type": "array" }, - "componentSource": { - "description": "Collections produced and consumed by component transforms of this stage.", + "outputCollectionName": { + "description": "User names for all collection outputs to this transform.", "items": { - "$ref": "ComponentSource" + "type": "string" }, "type": "array" }, "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", @@ -2144,212 +1911,308 @@ "SINGLETON_KIND", "SHUFFLE_KIND" ], - "description": "Type of tranform this stage is executing." + "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." + ] + }, + "inputCollectionName": { + "description": "User names for all collection inputs to this transform.", + "items": { + "type": "string" + }, + "type": "array" } }, - "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." + "id": "TransformSummary", + "description": "Description of the type, names/ids, and input/outputs for a transform." }, - "SendWorkerMessagesRequest": { - "description": "A request for sending worker messages to the service.", + "LeaseWorkItemResponse": { + "description": "Response to a request to lease WorkItems.", "type": "object", "properties": { - "workerMessages": { - "description": "The WorkerMessages to send.", + "workItems": { + "description": "A list of the leased WorkItems.", "items": { - "$ref": "WorkerMessage" + "$ref": "WorkItem" }, "type": "array" - }, - "location": { - "description": "The location which contains the job", - "type": "string" } }, - "id": "SendWorkerMessagesRequest" + "id": "LeaseWorkItemResponse" }, - "LogBucket": { - "description": "Bucket of values for Distribution's logarithmic histogram.", - "type": "object", + "LaunchTemplateParameters": { "properties": { - "log": { - "format": "int32", - "description": "floor(log2(value)); defined to be zero for nonpositive values.\n log(-1) = 0\n log(0) = 0\n log(1) = 0\n log(2) = 1\n log(3) = 1\n log(4) = 2\n log(5) = 2", - "type": "integer" + "environment": { + "description": "The runtime environment for the job.", + "$ref": "RuntimeEnvironment" }, - "count": { - "format": "int64", - "description": "Number of values in this bucket.", + "parameters": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The runtime parameters to pass to the job." + }, + "jobName": { + "description": "Required. The job name to use for the created job.", "type": "string" } }, - "id": "LogBucket" + "id": "LaunchTemplateParameters", + "description": "Parameters to provide to the template being launched.", + "type": "object" }, - "SourceSplitShard": { + "Sink": { "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" - ] + "codec": { + "description": "The codec to use to encode data written to the sink.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } }, - "source": { - "$ref": "Source", - "description": "DEPRECATED" + "spec": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The sink to write to, plus its parameters.", + "type": "object" } }, - "id": "SourceSplitShard", - "description": "DEPRECATED in favor of DerivedSource.", + "id": "Sink", + "description": "A sink that records can be encoded and written to.", "type": "object" }, - "CPUTime": { - "description": "Modeled after information exposed by /proc/stat.", - "type": "object", + "FlattenInstruction": { "properties": { - "rate": { - "format": "double", - "description": "Average CPU utilization rate (% non-idle cpu / second) since previous\nsample.", - "type": "number" - }, - "timestamp": { - "format": "google-datetime", - "description": "Timestamp of the measurement.", - "type": "string" - }, - "totalMs": { - "format": "uint64", - "description": "Total active CPU time across all cores (ie., non-idle) in milliseconds\nsince start-up.", - "type": "string" + "inputs": { + "description": "Describes the inputs to the flatten instruction.", + "items": { + "$ref": "InstructionInput" + }, + "type": "array" } }, - "id": "CPUTime" + "id": "FlattenInstruction", + "description": "An instruction that copies its inputs (zero or more) to its (single) output.", + "type": "object" }, - "Environment": { + "PartialGroupByKeyInstruction": { "type": "object", "properties": { - "sdkPipelineOptions": { - "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.", + "inputElementCodec": { "type": "object", "additionalProperties": { "description": "Properties of the object.", "type": "any" - } + }, + "description": "The codec to use for interpreting an element in the input PTable." }, - "userAgent": { - "description": "A description of the process that generated the request.", - "type": "object", + "valueCombiningFn": { "additionalProperties": { "description": "Properties of the object.", "type": "any" - } + }, + "description": "The value combining function to invoke.", + "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\".", + "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" }, - "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}", + "sideInputs": { + "description": "Zero or more side inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "originalCombineValuesStepName": { + "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", + "type": "string" + }, + "input": { + "$ref": "InstructionInput", + "description": "Describes the input to the partial group-by-key instruction." + } + }, + "id": "PartialGroupByKeyInstruction", + "description": "An instruction that does a partial group-by-key.\nOne input and one output." + }, + "InstructionInput": { + "description": "An input of an instruction, as a reference to an output of a\nproducer instruction.", + "type": "object", + "properties": { + "producerInstructionIndex": { + "format": "int32", + "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.", + "type": "integer" + }, + "outputNum": { + "format": "int32", + "description": "The output index (origin zero) within the producer.", + "type": "integer" + } + }, + "id": "InstructionInput" + }, + "StageSource": { + "id": "StageSource", + "description": "Description of an input or output of an execution stage.", + "type": "object", + "properties": { + "userName": { + "description": "Human-readable name for this source; may be user or system generated.", + "type": "string" + }, + "originalTransformOrCollection": { + "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "type": "string" + }, + "sizeBytes": { + "format": "int64", + "description": "Size of the source, if measurable.", + "type": "string" + }, + "name": { + "description": "Dataflow service generated name for this source.", + "type": "string" + } + } + }, + "StringList": { + "description": "A metric value representing a list of strings.", + "type": "object", + "properties": { + "elements": { + "description": "Elements of the list.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "StringList" + }, + "DisplayData": { + "description": "Data provided with a pipeline or transform to provide descriptive info.", + "type": "object", + "properties": { + "timestampValue": { + "format": "google-datetime", + "description": "Contains value if the data is of timestamp type.", + "type": "string" + }, + "boolValue": { + "description": "Contains value if the data is of a boolean type.", + "type": "boolean" + }, + "javaClassValue": { + "description": "Contains value if the data is of java class type.", + "type": "string" + }, + "strValue": { + "description": "Contains value if the data is of string type.", + "type": "string" + }, + "int64Value": { + "format": "int64", + "description": "Contains value if the data is of int64 type.", + "type": "string" + }, + "durationValue": { + "format": "google-duration", + "description": "Contains value if the data is of duration type.", + "type": "string" + }, + "namespace": { + "description": "The namespace for the key. This is usually a class name or programming\nlanguage namespace (i.e. python module) which defines the display data.\nThis allows a dax monitoring system to specially handle the data\nand perform custom rendering.", "type": "string" }, - "workerPools": { - "description": "The worker pools. At least one \"harness\" worker pool must be\nspecified in order for the job to have workers.", - "items": { - "$ref": "WorkerPool" - }, - "type": "array" + "floatValue": { + "format": "float", + "description": "Contains value if the data is of float type.", + "type": "number" }, - "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}", + "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" }, - "experiments": { - "description": "The list of experiments to enable.", - "items": { - "type": "string" - }, - "type": "array" - }, - "internalExperiments": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Experimental settings." + "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" }, - "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" + "label": { + "description": "An optional label to display in a dax UI for the element.", + "type": "string" }, - "serviceAccountEmail": { - "description": "Identity to run virtual machines as. Defaults to the default account.", + "url": { + "description": "An optional full URL.", "type": "string" } }, - "id": "Environment", - "description": "Describes the environment in which a Dataflow Job runs." + "id": "DisplayData" }, - "StreamingComputationTask": { + "LeaseWorkItemRequest": { + "description": "Request to lease WorkItems.", "type": "object", "properties": { - "computationRanges": { + "currentWorkerTime": { + "format": "google-datetime", + "description": "The current timestamp at the worker.", + "type": "string" + }, + "location": { + "description": "The location which contains the WorkItem's job.", + "type": "string" + }, + "workItemTypes": { "items": { - "$ref": "StreamingComputationRanges" + "type": "string" }, "type": "array", - "description": "Contains ranges of a streaming computation this task should apply to." + "description": "Filter for WorkItem type." }, - "dataDisks": { - "description": "Describes the set of data disks this task should apply to.", + "workerCapabilities": { "items": { - "$ref": "MountedDataDisk" + "type": "string" }, - "type": "array" + "type": "array", + "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities." }, - "taskType": { - "description": "A type of streaming computation task.", - "type": "string", - "enumDescriptions": [ - "The streaming computation task is unknown, or unspecified.", - "Stop processing specified streaming computation range(s).", - "Start processing specified streaming computation range(s)." - ], - "enum": [ - "STREAMING_COMPUTATION_TASK_UNKNOWN", - "STREAMING_COMPUTATION_TASK_STOP", - "STREAMING_COMPUTATION_TASK_START" - ] + "workerId": { + "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", + "type": "string" + }, + "requestedLeaseDuration": { + "format": "google-duration", + "description": "The initial lease period.", + "type": "string" } }, - "id": "StreamingComputationTask", - "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges." + "id": "LeaseWorkItemRequest" }, - "SendDebugCaptureRequest": { + "GetDebugConfigRequest": { + "type": "object", "properties": { "location": { "description": "The location which contains the job specified by job_id.", "type": "string" }, - "data": { - "description": "The encoded debug information.", - "type": "string" - }, "componentId": { - "description": "The internal component id for which debug information is sent.", + "description": "The internal component id for which debug configuration is\nrequested.", "type": "string" }, "workerId": { @@ -2357,2601 +2220,2752 @@ "type": "string" } }, - "id": "SendDebugCaptureRequest", - "description": "Request to send encoded debug information.", - "type": "object" + "id": "GetDebugConfigRequest", + "description": "Request to get updated debug configuration for component." }, - "GetDebugConfigResponse": { + "GetTemplateResponse": { + "description": "The response to a GetTemplate request.", "type": "object", "properties": { - "config": { - "description": "The encoded debug configuration for the requested component.", - "type": "string" + "status": { + "$ref": "Status", + "description": "The status of the get template request. Any problems with the\nrequest will be indicated in the error_details." + }, + "metadata": { + "$ref": "TemplateMetadata", + "description": "The template metadata describing the template name, available\nparameters, etc." } }, - "id": "GetDebugConfigResponse", - "description": "Response to a get debug configuration request." + "id": "GetTemplateResponse" }, - "ComponentTransform": { - "description": "Description of a transform executed as part of an execution stage.", + "Parameter": { "type": "object", "properties": { - "userName": { - "description": "Human-readable name for this transform; may be user or system generated.", + "value": { + "description": "Value for this parameter.", + "type": "any" + }, + "key": { + "description": "Key or name for this parameter.", + "type": "string" + } + }, + "id": "Parameter", + "description": "Structured data associated with this message." + }, + "ReportWorkItemStatusRequest": { + "properties": { + "currentWorkerTime": { + "format": "google-datetime", + "description": "The current timestamp at the worker.", "type": "string" }, - "originalTransform": { + "workerId": { "type": "string", - "description": "User name for the original user transform with which this transform is\nmost closely associated." + "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)." }, - "name": { - "description": "Dataflow service generated name for this source.", + "location": { + "description": "The location which contains the WorkItem's job.", "type": "string" + }, + "workItemStatuses": { + "description": "The order is unimportant, except that the order of the\nWorkItemServiceState messages in the ReportWorkItemStatusResponse\ncorresponds to the order of WorkItemStatus messages here.", + "items": { + "$ref": "WorkItemStatus" + }, + "type": "array" } }, - "id": "ComponentTransform" + "id": "ReportWorkItemStatusRequest", + "description": "Request to report the status of WorkItems.", + "type": "object" }, - "StreamingSetupTask": { - "description": "A task which initializes part of a streaming Dataflow job.", + "StreamingConfigTask": { + "description": "A task that carries configuration information for streaming computations.", "type": "object", "properties": { - "streamingComputationTopology": { - "$ref": "TopologyConfig", - "description": "The global topology of the streaming Dataflow job." + "streamingComputationConfigs": { + "description": "Set of computation configuration information.", + "items": { + "$ref": "StreamingComputationConfig" + }, + "type": "array" }, - "drain": { - "description": "The user has requested drain.", - "type": "boolean" + "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" }, - "workerHarnessPort": { - "format": "int32", - "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", - "type": "integer" + "userStepToStateFamilyNameMap": { + "additionalProperties": { + "type": "string" + }, + "description": "Map from user step names to state families.", + "type": "object" }, - "receiveWorkPort": { - "format": "int32", - "description": "The TCP port on which the worker should listen for messages from\nother streaming computation workers.", - "type": "integer" + "windmillServicePort": { + "format": "int64", + "description": "If present, the worker must use this port to communicate with Windmill\nService dispatchers. Only applicable when windmill_service_endpoint is\nspecified.", + "type": "string" } }, - "id": "StreamingSetupTask" + "id": "StreamingConfigTask" }, - "PubsubLocation": { - "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job.", + "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": { - "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" + "originalPipelineTransform": { + "description": "Description of each transform in the pipeline and collections between them.", + "items": { + "$ref": "TransformSummary" + }, + "type": "array" }, - "topic": { - "type": "string", - "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"" + "displayData": { + "description": "Pipeline level display data.", + "items": { + "$ref": "DisplayData" + }, + "type": "array" }, - "timestampLabel": { - "description": "If set, contains a pubsub label from which to extract record timestamps.\nIf left empty, record timestamps will be generated upon arrival.", + "executionPipelineStage": { + "description": "Description of each stage of execution of the pipeline.", + "items": { + "$ref": "ExecutionStageSummary" + }, + "type": "array" + } + }, + "id": "PipelineDescription" + }, + "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": { + "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" }, - "subscription": { - "description": "A pubsub subscription, in the form of\n\"pubsub.googleapis.com/subscriptions/\u003cproject-id\u003e/\u003csubscription-name\u003e\"", + "kind": { + "description": "The kind of step in the Cloud Dataflow job.", "type": "string" }, - "dropLateData": { - "description": "Indicates whether the pipeline allows late-arriving data.", - "type": "boolean" - }, - "trackingSubscription": { - "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", - "type": "string" + "properties": { + "type": "object", + "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." + } + }, + "id": "Step" + }, + "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": { + "type": "object", + "additionalProperties": { + "$ref": "JobExecutionStageInfo" + }, + "description": "A mapping from each stage to the information about that stage." } }, - "id": "PubsubLocation" + "id": "JobExecutionInfo" }, - "WorkerHealthReport": { + "FailedLocation": { + "id": "FailedLocation", + "description": "Indicates which location failed to respond to a request for data.", + "type": "object", "properties": { - "reportInterval": { - "format": "google-duration", - "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.", + "name": { + "description": "The name of the failed location.", + "type": "string" + } + } + }, + "Disk": { + "id": "Disk", + "description": "Describes the data disk used by a workflow job.", + "type": "object", + "properties": { + "mountPoint": { + "description": "Directory in a VM where disk is mounted.", "type": "string" }, - "vmIsHealthy": { - "type": "boolean", - "description": "Whether the VM is healthy." + "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" }, - "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.", + "sizeGb": { + "format": "int32", + "description": "Size of disk in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "type": "integer" + } + } + }, + "ListJobMessagesResponse": { + "properties": { + "autoscalingEvents": { + "description": "Autoscaling events in ascending timestamp order.", "items": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" + "$ref": "AutoscalingEvent" }, "type": "array" }, - "vmStartupTime": { - "format": "google-datetime", - "description": "The time the VM was booted.", + "jobMessages": { + "items": { + "$ref": "JobMessage" + }, + "type": "array", + "description": "Messages in ascending timestamp order." + }, + "nextPageToken": { + "description": "The token to obtain the next page of results if there are more.", "type": "string" } }, - "id": "WorkerHealthReport", - "description": "WorkerHealthReport contains information about the health of a worker.\n\nThe VM should be identified by the labels attached to the WorkerMessage that\nthis health ping belongs to.", + "id": "ListJobMessagesResponse", + "description": "Response to a request to list job messages.", "type": "object" }, - "JobMessage": { - "description": "A particular message pertaining to a Dataflow job.", + "CounterMetadata": { + "description": "CounterMetadata includes all static non-name non-value counter attributes.", "type": "object", "properties": { - "time": { - "format": "google-datetime", - "description": "The timestamp of the message.", - "type": "string" - }, - "id": { - "description": "Deprecated.", + "description": { + "description": "Human-readable description of the counter semantics.", "type": "string" }, - "messageImportance": { + "kind": { + "description": "Counter aggregation kind.", "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." + "Counter aggregation kind was not set.", + "Aggregated value is the sum of all contributed values.", + "Aggregated value is the max of all contributed values.", + "Aggregated value is the min of all contributed values.", + "Aggregated value is the mean of all contributed values.", + "Aggregated value represents the logical 'or' of all contributed values.", + "Aggregated value represents the logical 'and' of all contributed values.", + "Aggregated value is a set of unique contributed values.", + "Aggregated value captures statistics about a distribution." ], "enum": [ - "JOB_MESSAGE_IMPORTANCE_UNKNOWN", - "JOB_MESSAGE_DEBUG", - "JOB_MESSAGE_DETAILED", - "JOB_MESSAGE_BASIC", - "JOB_MESSAGE_WARNING", - "JOB_MESSAGE_ERROR" + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET", + "DISTRIBUTION" + ] + }, + "standardUnits": { + "enum": [ + "BYTES", + "BYTES_PER_SEC", + "MILLISECONDS", + "MICROSECONDS", + "NANOSECONDS", + "TIMESTAMP_MSEC", + "TIMESTAMP_USEC", + "TIMESTAMP_NSEC" ], - "description": "Importance level of the message." + "description": "System defined Units, see above enum.", + "type": "string", + "enumDescriptions": [ + "Counter returns a value in bytes.", + "Counter returns a value in bytes per second.", + "Counter returns a value in milliseconds.", + "Counter returns a value in microseconds.", + "Counter returns a value in nanoseconds.", + "Counter returns a timestamp in milliseconds.", + "Counter returns a timestamp in microseconds.", + "Counter returns a timestamp in nanoseconds." + ] }, - "messageText": { - "description": "The text of the message.", + "otherUnits": { + "description": "A string referring to the unit type.", "type": "string" } }, - "id": "JobMessage" + "id": "CounterMetadata" }, - "ParameterMetadata": { + "ApproximateReportedProgress": { + "description": "A progress measurement of a WorkItem by a worker.", + "type": "object", "properties": { - "regexes": { - "description": "Optional. Regexes that the parameter must match.", - "items": { - "type": "string" - }, - "type": "array" - }, - "label": { - "description": "Required. The label to display for the parameter.", - "type": "string" + "position": { + "description": "A Position within the work to represent a progress.", + "$ref": "Position" }, - "helpText": { - "description": "Required. The help text to display for the parameter.", - "type": "string" + "fractionConsumed": { + "format": "double", + "description": "Completion as fraction of the input consumed, from 0.0 (beginning, nothing\nconsumed), to 1.0 (end of the input, entire input consumed).", + "type": "number" }, - "isOptional": { - "type": "boolean", - "description": "Optional. Whether the parameter is optional. Defaults to false." + "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." }, - "name": { - "description": "Required. The name of the parameter.", - "type": "string" + "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": "ParameterMetadata", - "description": "Metadata for a specific parameter.", - "type": "object" + "id": "ApproximateReportedProgress" }, - "MultiOutputInfo": { - "description": "Information about an output of a multi-output DoFn.", + "StateFamilyConfig": { + "description": "State family configuration.", "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.", + "stateFamily": { + "description": "The state family value.", "type": "string" + }, + "isRead": { + "description": "If true, this family corresponds to a read operation.", + "type": "boolean" } }, - "id": "MultiOutputInfo" + "id": "StateFamilyConfig" }, - "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.", + "IntegerList": { + "properties": { + "elements": { + "description": "Elements of the list.", + "items": { + "$ref": "SplitInt64" + }, + "type": "array" + } + }, + "id": "IntegerList", + "description": "A metric value representing a list of integers.", + "type": "object" + }, + "ResourceUtilizationReportResponse": { + "description": "Service-side response to WorkerMessage reporting resource utilization.", + "type": "object", + "properties": {}, + "id": "ResourceUtilizationReportResponse" + }, + "SourceSplitResponse": { + "description": "The response to a SourceSplitRequest.", "type": "object", "properties": { - "options": { - "$ref": "SourceSplitOptions", - "description": "Hints for tuning the splitting process." + "outcome": { + "description": "Indicates whether splitting happened and produced a list of bundles.\nIf this is USE_CURRENT_SOURCE_AS_IS, the current source should\nbe processed \"as is\" without splitting. \"bundles\" is ignored in this case.\nIf this is SPLITTING_HAPPENED, then \"bundles\" contains a list of\nbundles into which the source was split.", + "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." + ], + "enum": [ + "SOURCE_SPLIT_OUTCOME_UNKNOWN", + "SOURCE_SPLIT_OUTCOME_USE_CURRENT", + "SOURCE_SPLIT_OUTCOME_SPLITTING_HAPPENED" + ] }, - "source": { - "$ref": "Source", - "description": "Specification of the source to be split." + "bundles": { + "description": "If outcome is SPLITTING_HAPPENED, then this is a list of bundles\ninto which the source was split. Otherwise this field is ignored.\nThis list can be empty, which means the source represents an empty input.", + "items": { + "$ref": "DerivedSource" + }, + "type": "array" + }, + "shards": { + "description": "DEPRECATED in favor of bundles.", + "items": { + "$ref": "SourceSplitShard" + }, + "type": "array" } }, - "id": "SourceSplitRequest" + "id": "SourceSplitResponse" }, - "SourceGetMetadataResponse": { - "description": "The result of a SourceGetMetadataOperation.", - "type": "object", + "ParallelInstruction": { "properties": { - "metadata": { - "$ref": "SourceMetadata", - "description": "The computed metadata." + "parDo": { + "$ref": "ParDoInstruction", + "description": "Additional information for ParDo instructions." + }, + "read": { + "$ref": "ReadInstruction", + "description": "Additional information for Read instructions." + }, + "flatten": { + "description": "Additional information for Flatten instructions.", + "$ref": "FlattenInstruction" + }, + "originalName": { + "description": "System-defined name for the operation in the original workflow graph.", + "type": "string" + }, + "systemName": { + "description": "System-defined name of this operation.\nUnique across the workflow.", + "type": "string" + }, + "write": { + "$ref": "WriteInstruction", + "description": "Additional information for Write instructions." + }, + "partialGroupByKey": { + "$ref": "PartialGroupByKeyInstruction", + "description": "Additional information for PartialGroupByKey instructions." + }, + "outputs": { + "description": "Describes the outputs of the instruction.", + "items": { + "$ref": "InstructionOutput" + }, + "type": "array" + }, + "name": { + "description": "User-provided name of this operation.", + "type": "string" } }, - "id": "SourceGetMetadataResponse" + "id": "ParallelInstruction", + "description": "Describes a particular operation comprising a MapTask.", + "type": "object" }, - "AutoscalingEvent": { + "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": { - "eventType": { - "enum": [ - "TYPE_UNKNOWN", - "TARGET_NUM_WORKERS_CHANGED", - "CURRENT_NUM_WORKERS_CHANGED", - "ACTUATION_FAILURE", - "NO_CHANGE" - ], - "description": "The type of autoscaling event to report.", + "dataDisk": { "type": "string", - "enumDescriptions": [ - "Default type for the enum. Value should never be returned.", - "The TARGET_NUM_WORKERS_CHANGED type should be used when the target\nworker pool size has changed at the start of an actuation. An event\nshould always be specified as TARGET_NUM_WORKERS_CHANGED if it reflects\na change in the target_num_workers.", - "The CURRENT_NUM_WORKERS_CHANGED type should be used when actual worker\npool size has been changed, but the target_num_workers has not changed.", - "The ACTUATION_FAILURE type should be used when we want to report\nan error to the user indicating why the current number of workers\nin the pool could not be changed.\nDisplayed in the current status and history widgets.", - "Used when we want to report to the user a reason why we are\nnot currently adjusting the number of workers.\nShould specify both target_num_workers, current_num_workers and a\ndecision_message." - ] - }, - "targetNumWorkers": { - "format": "int64", - "description": "The target number of workers the worker pool wants to resize to use.", - "type": "string" + "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\"." }, - "currentNumWorkers": { - "format": "int64", - "description": "The current number of workers the job has.", + "start": { + "description": "The start (inclusive) of the key range.", "type": "string" }, - "time": { - "format": "google-datetime", - "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", + "end": { + "description": "The end (exclusive) of the key range.", "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." } }, - "id": "AutoscalingEvent", - "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice." + "id": "KeyRangeDataDiskAssignment" }, - "MetricShortId": { - "description": "The metric short id is returned to the user alongside an offset into\nReportWorkItemStatusRequest", + "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": { - "metricIndex": { - "format": "int32", - "description": "The index of the corresponding metric in\nthe ReportWorkItemStatusRequest. Required.", - "type": "integer" + "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" }, - "shortId": { - "type": "string", - "format": "int64", - "description": "The service-generated short identifier for the metric." + "name": { + "description": "The name of the package.", + "type": "string" } }, - "id": "MetricShortId" + "id": "Package" }, - "ShellTask": { - "description": "A task which consists of a shell command for the worker to execute.", + "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": { - "exitCode": { + "userFn": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "The user function to invoke.", + "type": "object" + }, + "input": { + "$ref": "InstructionInput", + "description": "The input." + }, + "numOutputs": { + "type": "integer", "format": "int32", - "description": "Exit code for the task.", - "type": "integer" + "description": "The number of outputs." }, - "command": { - "description": "The shell command to run.", - "type": "string" + "sideInputs": { + "description": "Zero or more side inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "multiOutputInfos": { + "description": "Information about each of the outputs, if user_fn is a MultiDoFn.", + "items": { + "$ref": "MultiOutputInfo" + }, + "type": "array" } }, - "id": "ShellTask" + "id": "ParDoInstruction" }, - "TaskRunnerSettings": { + "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": { - "oauthScopes": { - "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", - "items": { - "type": "string" - }, - "type": "array" + "originNamespace": { + "type": "string", + "description": "A string containing a more specific namespace of the counter's origin." }, - "dataflowApiVersion": { - "description": "The API version of endpoint, e.g. \"v1b3\"", - "type": "string" + "origin": { + "enum": [ + "SYSTEM", + "USER" + ], + "description": "One of the standard Origins defined above.", + "type": "string", + "enumDescriptions": [ + "Counter was created by the Dataflow system.", + "Counter was created by the user." + ] }, - "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}", + "name": { + "description": "Counter name. Not necessarily globally-unique, but unique within the\ncontext of the other fields.\nRequired.", "type": "string" }, - "streamingWorkerMainClass": { - "description": "The streaming worker main class name.", + "executionStepName": { + "description": "Name of the stage. An execution step contains multiple component steps.", "type": "string" }, - "workflowFileName": { - "description": "The file to store the workflow in.", + "componentStepName": { + "description": "Name of the optimized step being executed by the workers.", "type": "string" }, - "languageHint": { - "description": "The suggested backend language.", - "type": "string" + "portion": { + "enum": [ + "ALL", + "KEY", + "VALUE" + ], + "description": "Portion of this counter, either key or value.", + "type": "string", + "enumDescriptions": [ + "Counter portion has not been set.", + "Counter reports a key.", + "Counter reports a value." + ] }, - "commandlinesFileName": { - "description": "The file to store preprocessing commands in.", + "originalStepName": { + "description": "System generated name of the original step in the user's graph, before\noptimization.", "type": "string" }, - "baseTaskDir": { - "description": "The location on the worker for task-specific subdirectories.", + "workerId": { + "type": "string", + "description": "ID of a particular worker." + } + }, + "id": "CounterStructuredName" + }, + "MetricUpdate": { + "description": "Describes the state of a metric.", + "type": "object", + "properties": { + "updateTime": { + "format": "google-datetime", + "description": "Timestamp associated with the metric value. Optional when workers are\nreporting work progress; it will be filled in responses from the\nmetrics API.", "type": "string" }, - "tempStoragePrefix": { - "description": "The prefix of the resources the taskrunner should use for\ntemporary storage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", - "type": "string" + "name": { + "$ref": "MetricStructuredName", + "description": "Name of the metric." }, - "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" + "distribution": { + "description": "A struct value describing properties of a distribution of numeric values.", + "type": "any" }, - "logToSerialconsole": { - "description": "Whether to send taskrunner log info to Google Compute Engine VM serial\nconsole.", - "type": "boolean" + "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" }, - "continueOnException": { - "description": "Whether to continue taskrunner if an exception is hit.", - "type": "boolean" + "internal": { + "description": "Worker-computed aggregate value for internal use by the Dataflow\nservice.", + "type": "any" }, - "parallelWorkerSettings": { - "description": "The settings to pass to the parallel worker harness.", - "$ref": "WorkerSettings" + "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" }, - "taskUser": { - "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\".", + "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" }, - "vmId": { - "description": "The ID string of the VM.", - "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" }, - "alsologtostderr": { - "description": "Whether to also send taskrunner log info to stderr.", - "type": "boolean" + "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" }, - "taskGroup": { - "description": "The UNIX group ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"wheel\".", - "type": "string" + "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" + } + }, + "id": "MetricUpdate" + }, + "ApproximateProgress": { + "properties": { + "percentComplete": { + "format": "float", + "description": "Obsolete.", + "type": "number" }, - "harnessCommand": { - "description": "The command to launch the worker harness.", - "type": "string" + "remainingTime": { + "type": "string", + "format": "google-duration", + "description": "Obsolete." }, - "logDir": { - "description": "The directory on the VM to store logs.", - "type": "string" + "position": { + "description": "Obsolete.", + "$ref": "Position" + } + }, + "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)." + }, + "workerHealthReportResponse": { + "description": "The service's response to a worker's health report.", + "$ref": "WorkerHealthReportResponse" } }, - "id": "TaskRunnerSettings", - "description": "Taskrunner configuration settings." + "id": "WorkerMessageResponse" }, - "Position": { - "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.", + "TemplateMetadata": { + "description": "Metadata describing a template.", "type": "object", "properties": { - "key": { - "description": "Position is a string key, ordered lexicographically.", - "type": "string" - }, - "recordIndex": { - "format": "int64", - "description": "Position is a record index.", - "type": "string" + "parameters": { + "description": "The parameters for the template.", + "items": { + "$ref": "ParameterMetadata" + }, + "type": "array" }, - "shufflePosition": { - "description": "CloudPosition is a base64 encoded BatchShufflePosition (with FIXED\nsharding).", + "name": { + "description": "Required. The name of the template.", "type": "string" }, - "concatPosition": { - "$ref": "ConcatPosition", - "description": "CloudPosition is a concat position." - }, - "byteOffset": { - "format": "int64", - "description": "Position is a byte offset.", + "description": { + "description": "Optional. A description of the template.", "type": "string" - }, - "end": { - "description": "Position is past all other positions. Also useful for the end\nposition of an unbounded range.", - "type": "boolean" } - } + }, + "id": "TemplateMetadata" }, - "Source": { - "description": "A source that records can be read and decoded from.", + "WorkerMessage": { + "description": "WorkerMessage provides information to the backend about a worker.", "type": "object", "properties": { - "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" + "time": { + "type": "string", + "format": "google-datetime", + "description": "The timestamp of the worker_message." }, - "codec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The codec to use to decode data read from the source.", - "type": "object" + "workerHealthReport": { + "description": "The health of a worker.", + "$ref": "WorkerHealthReport" }, - "spec": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The source to read from, plus its parameters." + "workerMetrics": { + "description": "Resource metrics reported by workers.", + "$ref": "ResourceUtilizationReport" }, - "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" + "workerMessageCode": { + "$ref": "WorkerMessageCode", + "description": "A worker message code." }, - "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).", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels are used to group WorkerMessages.\nFor example, a worker_message about a particular container\nmight have the labels:\n{ \"JOB_ID\": \"2015-04-22\",\n \"WORKER_ID\": \"wordcount-vm-2015…\"\n \"CONTAINER_TYPE\": \"worker\",\n \"CONTAINER_ID\": \"ac1234def\"}\nLabel tags typically correspond to Label enum values. However, for ease\nof development other strings can be used as tags. LABEL_UNSPECIFIED should\nnot be used here.", + "type": "object" + } + }, + "id": "WorkerMessage" + }, + "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": { + "metrics": { + "description": "All metrics for this job.", "items": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "type": "object" + "$ref": "MetricUpdate" }, "type": "array" + }, + "metricTime": { + "format": "google-datetime", + "description": "Timestamp as of which metric values are current.", + "type": "string" } }, - "id": "Source" + "id": "JobMetrics" }, - "SplitInt64": { - "id": "SplitInt64", - "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", + "FloatingPointList": { + "id": "FloatingPointList", + "description": "A metric value representing a list of floating point numbers.", "type": "object", "properties": { - "lowBits": { - "format": "uint32", - "description": "The low order bits: n & 0xffffffff.", - "type": "integer" - }, - "highBits": { - "format": "int32", - "description": "The high order bits, including the sign: n \u003e\u003e 32.", - "type": "integer" + "elements": { + "description": "Elements of the list.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" } } }, - "WorkerPool": { + "CounterUpdate": { + "description": "An update to a Counter sent from a worker.", + "type": "object", "properties": { - "subnetwork": { - "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", - "type": "string" - }, - "ipConfiguration": { - "type": "string", - "enumDescriptions": [ - "The configuration is unknown, or unspecified.", - "Workers should have public IP addresses.", - "Workers should have private IP addresses." - ], - "enum": [ - "WORKER_IP_UNSPECIFIED", - "WORKER_IP_PUBLIC", - "WORKER_IP_PRIVATE" - ], - "description": "Configuration for VM IPs." - }, - "autoscalingSettings": { - "$ref": "AutoscalingSettings", - "description": "Settings for autoscaling of this WorkerPool." - }, - "taskrunnerSettings": { - "$ref": "TaskRunnerSettings", - "description": "Settings passed through to Google Compute Engine workers when\nusing the standard Dataflow task runner. Users should ignore\nthis field." - }, - "metadata": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Metadata to set on the Google Compute Engine VMs." + "nameAndKind": { + "description": "Counter name and aggregation type.", + "$ref": "NameAndKind" }, - "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" - ] + "stringList": { + "$ref": "StringList", + "description": "List of strings, for Set." }, - "network": { - "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", - "type": "string" + "distribution": { + "$ref": "DistributionUpdate", + "description": "Distribution data" }, - "zone": { - "description": "Zone to run the worker pools in. If empty or unspecified, the service\nwill attempt to choose a reasonable default.", + "shortId": { + "format": "int64", + "description": "The service-generated short identifier for this counter.\nThe short_id -\u003e (name, metadata) mapping is constant for the lifetime of\na job.", "type": "string" }, - "numWorkers": { - "format": "int32", - "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.", - "type": "integer" + "floatingPointList": { + "$ref": "FloatingPointList", + "description": "List of floating point numbers, for Set." }, - "numThreadsPerWorker": { - "format": "int32", - "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).", - "type": "integer" + "integer": { + "$ref": "SplitInt64", + "description": "Integer value for Sum, Max, Min." }, - "diskSourceImage": { - "type": "string", - "description": "Fully qualified source image for disks." + "structuredNameAndMetadata": { + "description": "Counter structured name and metadata.", + "$ref": "CounterStructuredNameAndMetadata" }, - "packages": { - "description": "Packages to be installed on workers.", - "items": { - "$ref": "Package" - }, - "type": "array" + "integerList": { + "$ref": "IntegerList", + "description": "List of integers, for Set." }, - "teardownPolicy": { - "enumDescriptions": [ - "The teardown policy isn't specified, or is unknown.", - "Always teardown the resource.", - "Teardown the resource on success. This is useful for debugging\nfailures.", - "Never teardown the resource. This is useful for debugging and\ndevelopment." - ], - "enum": [ - "TEARDOWN_POLICY_UNKNOWN", - "TEARDOWN_ALWAYS", - "TEARDOWN_ON_SUCCESS", - "TEARDOWN_NEVER" - ], - "description": "Sets the policy for determining when to turndown worker pool.\nAllowed values are: `TEARDOWN_ALWAYS`, `TEARDOWN_ON_SUCCESS`, and\n`TEARDOWN_NEVER`.\n`TEARDOWN_ALWAYS` means workers are always torn down regardless of whether\nthe job succeeds. `TEARDOWN_ON_SUCCESS` means workers are torn down\nif the job succeeds. `TEARDOWN_NEVER` means the workers are never torn\ndown.\n\nIf the workers are not torn down by the service, they will\ncontinue to run and use Google Compute Engine VM resources in the\nuser's project until they are explicitly terminated by the user.\nBecause of this, Google recommends using the `TEARDOWN_ALWAYS`\npolicy except for small, manually supervised test jobs.\n\nIf unknown or unspecified, the service will attempt to choose a reasonable\ndefault.", - "type": "string" + "floatingPoint": { + "format": "double", + "description": "Floating point value for Sum, Max, Min.", + "type": "number" }, - "onHostMaintenance": { - "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", - "type": "string" + "integerMean": { + "description": "Integer mean aggregation value for Mean.", + "$ref": "IntegerMean" }, - "poolArgs": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Extra arguments for this worker pool." + "internal": { + "description": "Value for internally-defined counters used by the Dataflow service.", + "type": "any" }, - "diskSizeGb": { - "type": "integer", - "format": "int32", - "description": "Size of root disk for VMs, in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default." + "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" }, - "workerHarnessContainerImage": { - "description": "Required. Docker container image that executes the Cloud Dataflow worker\nharness, residing in Google Container Registry.", - "type": "string" + "floatingPointMean": { + "description": "Floating point mean aggregation value for Mean.", + "$ref": "FloatingPointMean" }, - "diskType": { - "description": "Type of root disk for VMs. If empty or unspecified, the service will\nattempt to choose a reasonable default.", + "boolean": { + "description": "Boolean value for And, Or.", + "type": "boolean" + } + }, + "id": "CounterUpdate" + }, + "SourceMetadata": { + "description": "Metadata about a Source useful for automatically optimizing\nand tuning the pipeline, etc.", + "type": "object", + "properties": { + "estimatedSizeBytes": { + "format": "int64", + "description": "An estimate of the total size (in bytes) of the data that would be\nread from this source. This estimate is in terms of external storage\nsize, before any decompression or other processing done by the reader.", "type": "string" }, - "machineType": { - "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", - "type": "string" + "infinite": { + "description": "Specifies that the size of this source is known to be infinite\n(this is a streaming source).", + "type": "boolean" }, - "kind": { - "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", - "type": "string" + "producesSortedKeys": { + "description": "Whether this source is known to produce key/value pairs with\nthe (encoded) keys in lexicographically sorted order.", + "type": "boolean" + } + }, + "id": "SourceMetadata" + }, + "DistributionUpdate": { + "description": "A metric value representing a distribution.", + "type": "object", + "properties": { + "max": { + "$ref": "SplitInt64", + "description": "The maximum value present in the distribution." }, - "dataDisks": { - "description": "Data disks that are used by a VM in this workflow.", + "logBuckets": { + "description": "(Optional) Logarithmic histogram of values.\nEach log may be in no more than one bucket. Order does not matter.", "items": { - "$ref": "Disk" + "$ref": "LogBucket" }, "type": "array" + }, + "count": { + "description": "The count of the number of elements present in the distribution.", + "$ref": "SplitInt64" + }, + "min": { + "$ref": "SplitInt64", + "description": "The minimum value present in the distribution." + }, + "sumOfSquares": { + "format": "double", + "description": "Use a double since the sum of squares is likely to overflow int64.", + "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": "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" + "id": "DistributionUpdate" }, - "SourceOperationRequest": { + "SourceFork": { "properties": { - "getMetadata": { - "$ref": "SourceGetMetadataRequest", - "description": "Information about a request to get metadata about a source." + "primarySource": { + "description": "DEPRECATED", + "$ref": "DerivedSource" }, - "split": { - "$ref": "SourceSplitRequest", - "description": "Information about a request to split a source." + "residual": { + "description": "DEPRECATED", + "$ref": "SourceSplitShard" + }, + "residualSource": { + "$ref": "DerivedSource", + "description": "DEPRECATED" + }, + "primary": { + "$ref": "SourceSplitShard", + "description": "DEPRECATED" } }, - "id": "SourceOperationRequest", - "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", + "id": "SourceFork", + "description": "DEPRECATED in favor of DynamicSourceSplit.", "type": "object" }, - "StructuredMessage": { - "description": "A rich message format, including a human readable string, a key for\nidentifying the message, and structured data associated with the message for\nprogrammatic consumption.", + "WorkerHealthReportResponse": { + "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", "type": "object", "properties": { - "messageText": { - "description": "Human-readable version of message.", - "type": "string" - }, - "parameters": { - "description": "The structured data associated with this message.", - "items": { - "$ref": "Parameter" - }, - "type": "array" - }, - "messageKey": { - "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", + "reportInterval": { + "format": "google-duration", + "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.", "type": "string" } }, - "id": "StructuredMessage" + "id": "WorkerHealthReportResponse" }, - "WorkItem": { - "id": "WorkItem", - "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", + "WorkItemStatus": { + "description": "Conveys a worker's progress through the work described by a WorkItem.", "type": "object", "properties": { - "mapTask": { - "description": "Additional information for MapTask WorkItems.", - "$ref": "MapTask" + "stopPosition": { + "$ref": "Position", + "description": "A worker may split an active map task in two parts, \"primary\" and\n\"residual\", continuing to process the primary part and returning the\nresidual part into the pool of available work.\nThis event is called a \"dynamic split\" and is critical to the dynamic\nwork rebalancing feature. The two obtained sub-tasks are called\n\"parts\" of the split.\nThe parts, if concatenated, must represent the same input as would\nbe read by the current task if the split did not happen.\nThe exact way in which the original task is decomposed into the two\nparts is specified either as a position demarcating them\n(stop_position), or explicitly as two DerivedSources, if this\ntask consumes a user-defined source type (dynamic_source_split).\n\nThe \"current\" task is adjusted as a result of the split: after a task\nwith range [A, B) sends a stop_position update at C, its range is\nconsidered to be [A, C), e.g.:\n* Progress should be interpreted relative to the new range, e.g.\n \"75% completed\" means \"75% of [A, C) completed\"\n* The worker should interpret proposed_stop_position relative to the\n new range, e.g. \"split at 68%\" should be interpreted as\n \"split at 68% of [A, C)\".\n* If the worker chooses to split again using stop_position, only\n stop_positions in [A, C) will be accepted.\n* Etc.\ndynamic_source_split has similar semantics: e.g., if a task with\nsource S splits using dynamic_source_split into {P, R}\n(where P and R must be together equivalent to S), then subsequent\nprogress and proposed_stop_position should be interpreted relative\nto P, and in a potential subsequent dynamic_source_split into {P', R'},\nP' and R' must be together equivalent to P, etc." }, - "seqMapTask": { - "$ref": "SeqMapTask", - "description": "Additional information for SeqMapTask WorkItems." + "completed": { + "description": "True if the WorkItem was completed (successfully or unsuccessfully).", + "type": "boolean" }, - "packages": { - "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", + "reportedProgress": { + "description": "The worker's progress through this WorkItem.", + "$ref": "ApproximateReportedProgress" + }, + "sourceFork": { + "description": "DEPRECATED in favor of dynamic_source_split.", + "$ref": "SourceFork" + }, + "counterUpdates": { + "description": "Worker output counters for this WorkItem.", "items": { - "$ref": "Package" + "$ref": "CounterUpdate" }, "type": "array" }, - "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": { - "format": "google-duration", - "description": "Recommended reporting interval.", - "type": "string" + "workItemId": { + "type": "string", + "description": "Identifies the WorkItem." }, - "streamingConfigTask": { - "$ref": "StreamingConfigTask", - "description": "Additional information for StreamingConfigTask WorkItems." + "metricUpdates": { + "description": "DEPRECATED in favor of counter_updates.", + "items": { + "$ref": "MetricUpdate" + }, + "type": "array" }, - "leaseExpireTime": { - "format": "google-datetime", - "description": "Time when the lease on this Work will expire.", - "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.", + "items": { + "$ref": "Status" + }, + "type": "array" }, - "initialReportIndex": { - "type": "string", - "format": "int64", - "description": "The initial index to use when reporting the status of the WorkItem." + "dynamicSourceSplit": { + "$ref": "DynamicSourceSplit", + "description": "See documentation of stop_position." }, - "shellTask": { - "$ref": "ShellTask", - "description": "Additional information for ShellTask WorkItems." + "sourceOperationResponse": { + "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation.", + "$ref": "SourceOperationResponse" }, - "streamingComputationTask": { - "description": "Additional information for StreamingComputationTask WorkItems.", - "$ref": "StreamingComputationTask" + "progress": { + "$ref": "ApproximateProgress", + "description": "DEPRECATED in favor of reported_progress." }, - "jobId": { - "description": "Identifies the workflow job this WorkItem belongs to.", + "requestedLeaseDuration": { + "format": "google-duration", + "description": "Amount of time the worker requests for its lease.", "type": "string" }, - "id": { + "reportIndex": { "format": "int64", - "description": "Identifies this WorkItem.", - "type": "string" - }, - "configuration": { - "description": "Work item-specific configuration as an opaque blob.", + "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.", "type": "string" } - } - }, - "ResourceUtilizationReport": { - "description": "Worker metrics exported from workers. This contains resource utilization\nmetrics accumulated from a variety of sources. For more information, see\ngo/df-resource-signals.", - "type": "object", - "properties": { - "cpuTime": { - "items": { - "$ref": "CPUTime" - }, - "type": "array", - "description": "CPU utilization samples." - } }, - "id": "ResourceUtilizationReport" + "id": "WorkItemStatus" }, - "ReportedParallelism": { - "description": "Represents the level of parallelism in a WorkItem's input,\nreported by the worker.", + "ComponentSource": { + "description": "Description of an interstitial value between transforms in an execution\nstage.", "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" + "name": { + "type": "string", + "description": "Dataflow service generated name for this source." }, - "value": { - "format": "double", - "description": "Specifies the level of parallelism in case it is finite.", - "type": "number" + "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" } }, - "id": "ReportedParallelism" + "id": "ComponentSource" }, - "TopologyConfig": { + "WorkItemServiceState": { "type": "object", "properties": { - "persistentStateVersion": { - "format": "int32", - "description": "Version number for persistent state.", - "type": "integer" - }, - "dataDiskAssignments": { - "description": "The disks assigned to a streaming Dataflow job.", - "items": { - "$ref": "DataDiskAssignment" - }, - "type": "array" + "suggestedStopPosition": { + "description": "Obsolete, always empty.", + "$ref": "Position" }, - "forwardingKeyBits": { - "format": "int32", - "description": "The size (in bits) of keys that will be assigned to source messages.", - "type": "integer" + "reportStatusInterval": { + "type": "string", + "format": "google-duration", + "description": "New recommended reporting interval." }, - "userStageToComputationNameMap": { + "harnessData": { "additionalProperties": { - "type": "string" + "description": "Properties of the object.", + "type": "any" }, - "description": "Maps user stage names to stable computation names.", + "description": "Other data returned by the service, specific to the particular\nworker harness.", "type": "object" }, - "computations": { - "description": "The computations associated with a streaming Dataflow job.", + "leaseExpireTime": { + "type": "string", + "format": "google-datetime", + "description": "Time at which the current lease will expire." + }, + "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.", "items": { - "$ref": "ComputationTopology" - }, - "type": "array" - } - }, - "id": "TopologyConfig", - "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations." - }, - "SourceSplitOptions": { - "description": "Hints for splitting a Source into bundles (parts for parallel\nprocessing) using SourceSplitRequest.", - "type": "object", - "properties": { - "desiredBundleSizeBytes": { + "$ref": "MetricShortId" + }, + "type": "array" + }, + "nextReportIndex": { "format": "int64", - "description": "The source should be split into a set of bundles where the estimated size\nof each is approximately this many bytes.", + "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.", "type": "string" }, - "desiredShardSizeBytes": { - "type": "string", - "format": "int64", - "description": "DEPRECATED in favor of desired_bundle_size_bytes." + "suggestedStopPoint": { + "$ref": "ApproximateProgress", + "description": "DEPRECATED in favor of split_request." + }, + "splitRequest": { + "description": "The progress point in the WorkItem where the Dataflow service\nsuggests that the worker truncate the task.", + "$ref": "ApproximateSplitRequest" } }, - "id": "SourceSplitOptions" + "id": "WorkItemServiceState", + "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker." }, - "ReadInstruction": { + "MetricStructuredName": { "properties": { - "source": { - "$ref": "Source", - "description": "The source to read from." + "context": { + "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", + "additionalProperties": { + "type": "string" + } + }, + "name": { + "description": "Worker-defined metric name.", + "type": "string" + }, + "origin": { + "description": "Origin (namespace) of metric name. May be blank for user-define metrics;\nwill be \"dataflow\" for metrics defined by the Dataflow service or SDK.", + "type": "string" } }, - "id": "ReadInstruction", - "description": "An instruction that reads records.\nTakes no inputs, produces one output.", + "id": "MetricStructuredName", + "description": "Identifies a metric, by describing the source which generated the\nmetric.", "type": "object" }, - "WorkerSettings": { - "description": "Provides data to pass through to the worker harness.", + "SeqMapTaskOutputInfo": { + "description": "Information about an output of a SeqMapTask.", "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}", - "type": "string" - }, - "baseUrl": { - "description": "The base URL for accessing Google Cloud APIs.\n\nWhen workers access Google Cloud APIs, they logically do so via\nrelative URLs. If this field is specified, it supplies the base\nURL to use for resolving these relative URLs. The normative\nalgorithm used is defined by RFC 1808, \"Relative Uniform Resource\nLocators\".\n\nIf not specified, the default value is \"http://www.googleapis.com/\"", - "type": "string" - }, - "reportingEnabled": { - "description": "Whether to send work progress updates to the service.", - "type": "boolean" - }, - "servicePath": { - "type": "string", - "description": "The Cloud Dataflow service path relative to the root URL, for example,\n\"dataflow/v1b3/projects\"." - }, - "shuffleServicePath": { - "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\".", + "tag": { + "description": "The id of the TupleTag the user code will tag the output value by.", "type": "string" }, - "workerId": { - "description": "The ID of the worker running this pipeline.", - "type": "string" + "sink": { + "description": "The sink to write the output value to.", + "$ref": "Sink" } }, - "id": "WorkerSettings" + "id": "SeqMapTaskOutputInfo" }, - "DataDiskAssignment": { - "description": "Data disk assignment for a given VM instance.", - "type": "object", + "JobExecutionStageInfo": { "properties": { - "vmInstance": { - "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", - "type": "string" - }, - "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\" }.", + "stepName": { + "description": "The steps associated with the execution stage.\nNote that stages may have several steps, and that a given step\nmight be run by more than one stage.", "items": { "type": "string" }, "type": "array" } }, - "id": "DataDiskAssignment" - }, - "StreamingStageLocation": { - "properties": { - "streamId": { - "description": "Identifies the particular stream within the streaming Dataflow\njob.", - "type": "string" - } - }, - "id": "StreamingStageLocation", - "description": "Identifies the location of a streaming computation stage, for\nstage-to-stage communication.", + "id": "JobExecutionStageInfo", + "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", "type": "object" }, - "ApproximateSplitRequest": { - "description": "A suggestion by the service to the worker to dynamically split the WorkItem.", + "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": { - "fractionConsumed": { - "type": "number", - "format": "double", - "description": "A fraction at which to split the work item, from 0.0 (beginning of the\ninput) to 1.0 (end of the input)." + "deprecatedPersistentDirectory": { + "type": "string", + "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem." }, - "position": { - "description": "A Position at which to split the work item.", - "$ref": "Position" + "deliveryEndpoint": { + "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", + "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" + }, + "start": { + "description": "The start (inclusive) of the key range.", + "type": "string" + }, + "end": { + "description": "The end (exclusive) of the key range.", + "type": "string" } }, - "id": "ApproximateSplitRequest" + "id": "KeyRangeLocation" }, - "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.", + "SourceGetMetadataRequest": { + "description": "A request to compute the SourceMetadata of a Source.", "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.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "source": { + "$ref": "Source", + "description": "Specification of the source whose metadata should be computed." } }, - "id": "Status" + "id": "SourceGetMetadataRequest" }, - "ExecutionStageState": { - "type": "object", + "NameAndKind": { "properties": { - "executionStageName": { - "description": "The name of the execution stage.", - "type": "string" - }, - "currentStateTime": { - "format": "google-datetime", - "description": "The time at which the stage transitioned to this state.", + "name": { + "description": "Name of the counter.", "type": "string" }, - "executionStageState": { - "description": "Executions stage states allow the same set of values as JobState.", + "kind": { + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET", + "DISTRIBUTION" + ], + "description": "Counter aggregation kind.", "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" + "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." ] } }, - "id": "ExecutionStageState", - "description": "A message describing the state of a particular execution stage." + "id": "NameAndKind", + "description": "Basic metadata about a counter.", + "type": "object" }, - "StreamLocation": { - "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", + "SeqMapTask": { "type": "object", "properties": { - "customSourceLocation": { - "$ref": "CustomSourceLocation", - "description": "The stream is a custom source." + "userFn": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "The user function to invoke.", + "type": "object" }, - "sideInputLocation": { - "$ref": "StreamingSideInputLocation", - "description": "The stream is a streaming side input." + "name": { + "description": "The user-provided name of the SeqDo operation.", + "type": "string" }, - "pubsubLocation": { - "description": "The stream is a pubsub stream.", - "$ref": "PubsubLocation" + "outputInfos": { + "description": "Information about each of the outputs.", + "items": { + "$ref": "SeqMapTaskOutputInfo" + }, + "type": "array" }, - "streamingStageLocation": { - "description": "The stream is part of another computation within the current\nstreaming Dataflow job.", - "$ref": "StreamingStageLocation" + "inputs": { + "description": "Information about each of the inputs.", + "items": { + "$ref": "SideInputInfo" + }, + "type": "array" + }, + "stageName": { + "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", + "type": "string" + }, + "systemName": { + "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", + "type": "string" } }, - "id": "StreamLocation" + "id": "SeqMapTask", + "description": "Describes a particular function to invoke." }, - "SendWorkerMessagesResponse": { - "description": "The response to the worker messages.", + "WorkerMessageCode": { + "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", "properties": { - "workerMessageResponses": { - "items": { - "$ref": "WorkerMessageResponse" + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "type": "array", - "description": "The servers response to the worker messages." + "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": "SendWorkerMessagesResponse" + } }, - "LeaseWorkItemResponse": { - "description": "Response to a request to lease WorkItems.", + "CustomSourceLocation": { "type": "object", "properties": { - "workItems": { - "items": { - "$ref": "WorkItem" - }, - "type": "array", - "description": "A list of the leased WorkItems." + "stateful": { + "type": "boolean", + "description": "Whether this source is stateful." } }, - "id": "LeaseWorkItemResponse" + "id": "CustomSourceLocation", + "description": "Identifies the location of a custom souce." }, - "TransformSummary": { - "description": "Description of the type, names/ids, and input/outputs for a transform.", + "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": { - "inputCollectionName": { - "description": "User names for all collection inputs to this transform.", - "items": { - "type": "string" - }, - "type": "array" - }, - "name": { - "description": "User provided name for this transform instance.", + "stageName": { + "description": "System-defined name of the stage containing this MapTask.\nUnique across the workflow.", "type": "string" }, - "id": { - "description": "SDK generated id of this transform instance.", + "systemName": { + "description": "System-defined name of this MapTask.\nUnique across the workflow.", "type": "string" }, - "outputCollectionName": { - "description": "User names for all collection outputs to this transform.", + "instructions": { + "description": "The instructions in the MapTask.", "items": { - "type": "string" + "$ref": "ParallelInstruction" }, "type": "array" + } + }, + "id": "MapTask" + }, + "FloatingPointMean": { + "description": "A representation of a floating point mean metric contribution.", + "type": "object", + "properties": { + "sum": { + "format": "double", + "description": "The sum of all values being aggregated.", + "type": "number" }, - "displayData": { - "description": "Transform-specific display data.", + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + } + }, + "id": "FloatingPointMean" + }, + "ReportWorkItemStatusResponse": { + "description": "Response from a request to report the status of WorkItems.", + "type": "object", + "properties": { + "workItemServiceStates": { + "description": "A set of messages indicating the service-side state for each\nWorkItem whose status was reported, in the same order as the\nWorkItemStatus messages in the ReportWorkItemStatusRequest which\nresulting in this response.", "items": { - "$ref": "DisplayData" + "$ref": "WorkItemServiceState" }, "type": "array" - }, - "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" - ] } }, - "id": "TransformSummary" + "id": "ReportWorkItemStatusResponse" }, - "StreamingComputationConfig": { - "description": "Configuration information for a single streaming computation.", + "InstructionOutput": { + "description": "An output of an instruction.", "type": "object", "properties": { - "computationId": { - "type": "string", - "description": "Unique identifier for this computation." + "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" }, - "stageName": { - "type": "string", - "description": "Stage name of this computation." + "onlyCountKeyBytes": { + "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the key size.", + "type": "boolean" }, "systemName": { - "description": "System defined name for this computation.", + "description": "System-defined name of this output.\nUnique across the workflow.", "type": "string" }, - "instructions": { - "items": { - "$ref": "ParallelInstruction" - }, - "type": "array", - "description": "Instructions that comprise the computation." - } - }, - "id": "StreamingComputationConfig" - }, - "Sink": { - "description": "A sink that records can be encoded and written to.", - "type": "object", - "properties": { - "spec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The sink to write to, plus its parameters.", - "type": "object" + "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" }, - "description": "The codec to use to encode data written to the sink.", + "description": "The codec to use to encode data being written via this output.", "type": "object" + }, + "name": { + "description": "The user-provided name of this output.", + "type": "string" } }, - "id": "Sink" + "id": "InstructionOutput" }, - "LaunchTemplateParameters": { - "description": "Parameters to provide to the template being launched.", + "CreateJobFromTemplateRequest": { "type": "object", "properties": { "parameters": { + "description": "The runtime parameters to pass to the job.", + "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" + }, "environment": { "$ref": "RuntimeEnvironment", "description": "The runtime environment for the job." + }, + "location": { + "type": "string", + "description": "The location to which to direct the request." } }, - "id": "LaunchTemplateParameters" + "id": "CreateJobFromTemplateRequest", + "description": "A request to create a Cloud Dataflow job from a template." }, - "FlattenInstruction": { - "description": "An instruction that copies its inputs (zero or more) to its (single) output.", + "IntegerMean": { + "description": "A representation of an integer mean metric contribution.", + "type": "object", + "properties": { + "sum": { + "$ref": "SplitInt64", + "description": "The sum of all values being aggregated." + }, + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + } + }, + "id": "IntegerMean" + }, + "ListJobsResponse": { + "type": "object", + "properties": { + "jobs": { + "description": "A subset of the requested job information.", + "items": { + "$ref": "Job" + }, + "type": "array" + }, + "failedLocation": { + "description": "Zero or more messages describing locations that failed to respond.", + "items": { + "$ref": "FailedLocation" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Set if there may be more results than fit in this response.", + "type": "string" + } + }, + "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." + }, + "ComputationTopology": { + "description": "All configuration data for a particular Computation.", "type": "object", "properties": { + "stateFamilies": { + "description": "The state family values.", + "items": { + "$ref": "StateFamilyConfig" + }, + "type": "array" + }, + "outputs": { + "description": "The outputs from the computation.", + "items": { + "$ref": "StreamLocation" + }, + "type": "array" + }, + "systemStageName": { + "description": "The system stage name.", + "type": "string" + }, + "computationId": { + "description": "The ID of the computation.", + "type": "string" + }, "inputs": { - "description": "Describes the inputs to the flatten instruction.", + "description": "The inputs to the computation.", "items": { - "$ref": "InstructionInput" + "$ref": "StreamLocation" + }, + "type": "array" + }, + "keyRanges": { + "description": "The key ranges processed by the computation.", + "items": { + "$ref": "KeyRangeLocation" }, "type": "array" } }, - "id": "FlattenInstruction" + "id": "ComputationTopology" }, - "PartialGroupByKeyInstruction": { - "description": "An instruction that does a partial group-by-key.\nOne input and one output.", + "RuntimeEnvironment": { "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" - } + "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" }, - "valueCombiningFn": { - "description": "The value combining function to invoke.", - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - } + "maxWorkers": { + "format": "int32", + "description": "The maximum number of Google Compute Engine instances to be made\navailable to your pipeline during execution, from 1 to 1000.", + "type": "integer" }, - "originalCombineValuesInputStoreName": { - "description": "If this instruction includes a combining function this is the name of the\nintermediate store between the GBK and the CombineValues.", + "serviceAccountEmail": { + "description": "The email address of the service account to run the job as.", + "type": "string" + }, + "tempLocation": { + "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", "type": "string" }, - "sideInputs": { - "description": "Zero or more side inputs.", - "items": { - "$ref": "SideInputInfo" - }, - "type": "array" + "bypassTempDirValidation": { + "description": "Whether to bypass the safety checks for the job's temporary directory.\nUse with caution.", + "type": "boolean" }, - "originalCombineValuesStepName": { - "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", + "machineType": { + "description": "The machine type to use for the job. Defaults to the value from the\ntemplate if not specified.", "type": "string" - }, - "input": { - "$ref": "InstructionInput", - "description": "Describes the input to the partial group-by-key instruction." } }, - "id": "PartialGroupByKeyInstruction" + "id": "RuntimeEnvironment", + "description": "The environment values to set at runtime." }, - "InstructionInput": { - "description": "An input of an instruction, as a reference to an output of a\nproducer instruction.", + "MountedDataDisk": { + "description": "Describes mounted data disk.", "type": "object", "properties": { - "producerInstructionIndex": { - "format": "int32", - "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.", - "type": "integer" - }, - "outputNum": { - "format": "int32", - "description": "The output index (origin zero) within the producer.", - "type": "integer" + "dataDisk": { + "description": "The name of the data disk.\nThis name is local to the Google Cloud Platform project and uniquely\nidentifies the disk within that project, for example\n\"myproject-1014-104817-4c2-harness-0-disk-1\".", + "type": "string" } }, - "id": "InstructionInput" + "id": "MountedDataDisk" }, - "StageSource": { - "id": "StageSource", - "description": "Description of an input or output of an execution stage.", + "StreamingSideInputLocation": { + "description": "Identifies the location of a streaming side input.", "type": "object", "properties": { - "sizeBytes": { - "type": "string", - "format": "int64", - "description": "Size of the source, if measurable." - }, - "name": { - "description": "Dataflow service generated name for this source.", - "type": "string" - }, - "userName": { - "description": "Human-readable name for this source; may be user or system generated.", + "stateFamily": { + "description": "Identifies the state family where this side input is stored.", "type": "string" }, - "originalTransformOrCollection": { - "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", - "type": "string" + "tag": { + "type": "string", + "description": "Identifies the particular side input within the streaming Dataflow job." } - } + }, + "id": "StreamingSideInputLocation" }, - "StringList": { + "LaunchTemplateResponse": { + "description": "Response to the request to launch a template.", "type": "object", "properties": { - "elements": { - "description": "Elements of the list.", - "items": { - "type": "string" - }, - "type": "array" + "job": { + "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched.", + "$ref": "Job" } }, - "id": "StringList", - "description": "A metric value representing a list of strings." + "id": "LaunchTemplateResponse" }, - "DisplayData": { - "description": "Data provided with a pipeline or transform to provide descriptive info.", + "Job": { + "description": "Defines a job to be run by the Cloud Dataflow service.", "type": "object", "properties": { - "strValue": { - "description": "Contains value if the data is of string type.", - "type": "string" - }, - "durationValue": { - "format": "google-duration", - "description": "Contains value if the data is of duration type.", - "type": "string" + "stageStates": { + "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", + "items": { + "$ref": "ExecutionStageState" + }, + "type": "array" }, - "int64Value": { - "format": "int64", - "description": "Contains value if the data is of int64 type.", - "type": "string" + "type": { + "description": "The type of Cloud Dataflow job.", + "type": "string", + "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" + ] }, - "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.", + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", "type": "string" }, - "floatValue": { - "type": "number", - "format": "float", - "description": "Contains value if the data is of float type." + "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" }, - "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.", + "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" }, - "shortStrValue": { + "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", - "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." - }, - "url": { - "description": "An optional full URL.", - "type": "string" - }, - "label": { - "description": "An optional label to display in a dax UI for the element.", - "type": "string" - }, - "timestampValue": { - "format": "google-datetime", - "description": "Contains value if the data is of timestamp type.", - "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" + ] }, - "boolValue": { - "type": "boolean", - "description": "Contains value if the data is of a boolean type." + "tempFiles": { + "description": "A set of files the system should be aware of that are used\nfor temporary storage. These temporary files will be\nremoved on job completion.\nNo duplicates are allowed.\nNo file patterns are supported.\n\nThe supported files are:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "items": { + "type": "string" + }, + "type": "array" }, - "javaClassValue": { - "description": "Contains value if the data is of java class type.", - "type": "string" - } - }, - "id": "DisplayData" - }, - "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.", + "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" }, - "workerId": { - "description": "The worker id, i.e., VM hostname.", + "name": { + "description": "The user-specified Cloud Dataflow job name.\n\nOnly one Job with a given name may exist in a project at any\ngiven time. If a caller attempts to create a Job with the same\nname as an already-existing Job, the attempt returns the\nexisting Job.\n\nThe name must match the regular expression\n`[a-z]([-a-z0-9]{0,38}[a-z0-9])?`", "type": "string" }, - "location": { - "description": "The location which contains the job specified by job_id.", - "type": "string" - } - }, - "id": "GetDebugConfigRequest" - }, - "LeaseWorkItemRequest": { - "properties": { - "workerCapabilities": { - "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities.", + "steps": { + "description": "The top-level steps that constitute the entire job.", "items": { - "type": "string" + "$ref": "Step" }, "type": "array" }, - "workerId": { - "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", + "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" }, - "requestedLeaseDuration": { + "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": { "type": "string", - "format": "google-duration", - "description": "The initial lease period." + "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." }, - "currentWorkerTime": { + "location": { + "description": "The location that contains this job.", + "type": "string" + }, + "currentStateTime": { "format": "google-datetime", - "description": "The current timestamp at the worker.", + "description": "The timestamp associated with the current state.", "type": "string" }, - "workItemTypes": { - "items": { + "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": { + "additionalProperties": { "type": "string" }, - "type": "array", - "description": "Filter for WorkItem type." + "description": "User-defined labels for this job.\n\nThe labels map can contain no more than 64 entries. Entries of the labels\nmap are UTF8 strings that comply with the following restrictions:\n\n* Keys must conform to regexp: \\p{Ll}\\p{Lo}{0,62}\n* Values must conform to regexp: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63}\n* Both keys and values are additionally constrained to be \u003c= 128 bytes in\nsize.", + "type": "object" }, - "location": { - "type": "string", - "description": "The location which contains the WorkItem's job." + "environment": { + "$ref": "Environment", + "description": "The environment for the job." + }, + "createTime": { + "format": "google-datetime", + "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", + "type": "string" } }, - "id": "LeaseWorkItemRequest", - "description": "Request to lease WorkItems.", - "type": "object" + "id": "Job" }, - "GetTemplateResponse": { - "description": "The response to a GetTemplate request.", + "DynamicSourceSplit": { + "description": "When a task splits using WorkItemStatus.dynamic_source_split, this\nmessage describes the two parts of the split relative to the\ndescription of the current task's input.", "type": "object", "properties": { - "metadata": { - "description": "The template metadata describing the template name, available\nparameters, etc.", - "$ref": "TemplateMetadata" + "residual": { + "$ref": "DerivedSource", + "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source." }, - "status": { - "description": "The status of the get template request. Any problems with the\nrequest will be indicated in the error_details.", - "$ref": "Status" + "primary": { + "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current.", + "$ref": "DerivedSource" } }, - "id": "GetTemplateResponse" + "id": "DynamicSourceSplit" }, - "Parameter": { - "description": "Structured data associated with this message.", + "DerivedSource": { + "description": "Specification of one of the bundles produced as a result of splitting\na Source (e.g. when executing a SourceSplitRequest, or when\nsplitting an active task using WorkItemStatus.dynamic_source_split),\nrelative to the source being split.", "type": "object", "properties": { - "key": { - "description": "Key or name for this parameter.", + "derivationMode": { + "enumDescriptions": [ + "The source derivation is unknown, or unspecified.", + "Produce a completely independent Source with no base.", + "Produce a Source based on the Source being split.", + "Produce a Source based on the base of the Source being split." + ], + "enum": [ + "SOURCE_DERIVATION_MODE_UNKNOWN", + "SOURCE_DERIVATION_MODE_INDEPENDENT", + "SOURCE_DERIVATION_MODE_CHILD_OF_CURRENT", + "SOURCE_DERIVATION_MODE_SIBLING_OF_CURRENT" + ], + "description": "What source to base the produced source on (if any).", "type": "string" }, - "value": { - "description": "Value for this parameter.", - "type": "any" + "source": { + "description": "Specification of the source.", + "$ref": "Source" } }, - "id": "Parameter" + "id": "DerivedSource" }, - "ReportWorkItemStatusRequest": { + "SourceOperationResponse": { "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.", - "items": { - "$ref": "WorkItemStatus" - }, - "type": "array" - }, - "currentWorkerTime": { - "format": "google-datetime", - "description": "The current timestamp at the worker.", - "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).", - "type": "string" + "split": { + "$ref": "SourceSplitResponse", + "description": "A response to a request to split a source." }, - "location": { - "description": "The location which contains the WorkItem's job.", - "type": "string" + "getMetadata": { + "$ref": "SourceGetMetadataResponse", + "description": "A response to a request to get metadata about a source." } }, - "id": "ReportWorkItemStatusRequest", - "description": "Request to report the status of WorkItems.", + "id": "SourceOperationResponse", + "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed.", "type": "object" }, - "StreamingConfigTask": { - "description": "A task that carries configuration information for streaming computations.", + "SendDebugCaptureResponse": { + "description": "Response to a send capture request.\nnothing", + "type": "object", + "properties": {}, + "id": "SendDebugCaptureResponse" + }, + "SideInputInfo": { + "id": "SideInputInfo", + "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", "type": "object", "properties": { - "streamingComputationConfigs": { - "description": "Set of computation configuration information.", - "items": { - "$ref": "StreamingComputationConfig" - }, - "type": "array" - }, - "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.", + "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" }, - "userStepToStateFamilyNameMap": { + "kind": { "type": "object", "additionalProperties": { - "type": "string" - }, - "description": "Map from user step names to state families." - }, - "windmillServicePort": { - "format": "int64", - "description": "If present, the worker must use this port to communicate with Windmill\nService dispatchers. Only applicable when windmill_service_endpoint is\nspecified.", - "type": "string" - } - }, - "id": "StreamingConfigTask" - }, - "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": { - "originalPipelineTransform": { - "description": "Description of each transform in the pipeline and collections between them.", - "items": { - "$ref": "TransformSummary" - }, - "type": "array" - }, - "displayData": { - "description": "Pipeline level display data.", - "items": { - "$ref": "DisplayData" + "description": "Properties of the object.", + "type": "any" }, - "type": "array" + "description": "How to interpret the source element(s) as a side input value." }, - "executionPipelineStage": { - "description": "Description of each stage of execution of the pipeline.", + "sources": { + "description": "The source(s) to read element(s) from to get the value of this side input.\nIf more than one source, then the elements are taken from the\nsources, in the specified order if order matters.\nAt least one source is required.", "items": { - "$ref": "ExecutionStageSummary" + "$ref": "Source" }, "type": "array" } - }, - "id": "PipelineDescription" + } }, - "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.", + "CounterStructuredNameAndMetadata": { + "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", "type": "object", "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" + "$ref": "CounterStructuredName", + "description": "Structured name of the counter." }, - "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" + "metadata": { + "$ref": "CounterMetadata", + "description": "Metadata associated with a counter" } }, - "id": "Step" + "id": "CounterStructuredNameAndMetadata" }, - "JobExecutionInfo": { - "description": "Additional information about how a Cloud Dataflow job will be executed that\nisn't contained in the submitted job.", + "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": { - "stages": { - "description": "A mapping from each stage to the information about that stage.", - "type": "object", - "additionalProperties": { - "$ref": "JobExecutionStageInfo" - } + "position": { + "description": "Position within the inner source.", + "$ref": "Position" + }, + "index": { + "format": "int32", + "description": "Index of the inner source.", + "type": "integer" } }, - "id": "JobExecutionInfo" + "id": "ConcatPosition" }, - "FailedLocation": { + "WriteInstruction": { + "description": "An instruction that writes records.\nTakes one input, produces no outputs.", "type": "object", "properties": { - "name": { - "description": "The name of the failed location.", - "type": "string" + "input": { + "$ref": "InstructionInput", + "description": "The input." + }, + "sink": { + "$ref": "Sink", + "description": "The sink to write to." } }, - "id": "FailedLocation", - "description": "Indicates which location failed to respond to a request for data." + "id": "WriteInstruction" }, - "Disk": { + "StreamingComputationRanges": { + "description": "Describes full or partial data disk assignment information of the computation\nranges.", + "type": "object", "properties": { - "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" - }, - "sizeGb": { - "format": "int32", - "description": "Size of disk in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", - "type": "integer" + "rangeAssignments": { + "description": "Data disk assignments for ranges from this computation.", + "items": { + "$ref": "KeyRangeDataDiskAssignment" + }, + "type": "array" }, - "mountPoint": { - "description": "Directory in a VM where disk is mounted.", + "computationId": { + "description": "The ID of the computation.", "type": "string" } }, - "id": "Disk", - "description": "Describes the data disk used by a workflow job.", - "type": "object" + "id": "StreamingComputationRanges" }, - "CounterMetadata": { - "description": "CounterMetadata includes all static non-name non-value counter attributes.", - "type": "object", - "properties": { - "description": { - "description": "Human-readable description of the counter semantics.", - "type": "string" - }, - "kind": { - "enumDescriptions": [ - "Counter aggregation kind was not set.", - "Aggregated value is the sum of all contributed values.", - "Aggregated value is the max of all contributed values.", - "Aggregated value is the min of all contributed values.", - "Aggregated value is the mean of all contributed values.", - "Aggregated value represents the logical 'or' of all contributed values.", - "Aggregated value represents the logical 'and' of all contributed values.", - "Aggregated value is a set of unique contributed values.", - "Aggregated value captures statistics about a distribution." - ], - "enum": [ - "INVALID", - "SUM", - "MAX", - "MIN", - "MEAN", - "OR", - "AND", - "SET", - "DISTRIBUTION" - ], - "description": "Counter aggregation kind.", - "type": "string" - }, - "standardUnits": { - "type": "string", + "AutoscalingSettings": { + "id": "AutoscalingSettings", + "description": "Settings for WorkerPool autoscaling.", + "type": "object", + "properties": { + "algorithm": { "enumDescriptions": [ - "Counter returns a value in bytes.", - "Counter returns a value in bytes per second.", - "Counter returns a value in milliseconds.", - "Counter returns a value in microseconds.", - "Counter returns a value in nanoseconds.", - "Counter returns a timestamp in milliseconds.", - "Counter returns a timestamp in microseconds.", - "Counter returns a timestamp in nanoseconds." + "The algorithm is unknown, or unspecified.", + "Disable autoscaling.", + "Increase worker count over time to reduce job execution time." ], "enum": [ - "BYTES", - "BYTES_PER_SEC", - "MILLISECONDS", - "MICROSECONDS", - "NANOSECONDS", - "TIMESTAMP_MSEC", - "TIMESTAMP_USEC", - "TIMESTAMP_NSEC" + "AUTOSCALING_ALGORITHM_UNKNOWN", + "AUTOSCALING_ALGORITHM_NONE", + "AUTOSCALING_ALGORITHM_BASIC" ], - "description": "System defined Units, see above enum." - }, - "otherUnits": { - "description": "A string referring to the unit type.", + "description": "The algorithm to use for autoscaling.", "type": "string" + }, + "maxNumWorkers": { + "format": "int32", + "description": "The maximum number of workers to cap scaling at.", + "type": "integer" } - }, - "id": "CounterMetadata" + } }, - "ListJobMessagesResponse": { - "id": "ListJobMessagesResponse", - "description": "Response to a request to list job messages.", + "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": { - "nextPageToken": { + "outputSource": { + "items": { + "$ref": "StageSource" + }, + "type": "array", + "description": "Output sources for this stage." + }, + "name": { "type": "string", - "description": "The token to obtain the next page of results if there are more." + "description": "Dataflow service generated name for this stage." }, - "autoscalingEvents": { - "description": "Autoscaling events in ascending timestamp order.", + "inputSource": { + "description": "Input sources for this stage.", "items": { - "$ref": "AutoscalingEvent" + "$ref": "StageSource" }, "type": "array" }, - "jobMessages": { - "description": "Messages in ascending timestamp order.", + "id": { + "description": "Dataflow service generated id for this stage.", + "type": "string" + }, + "componentTransform": { + "description": "Transforms that comprise this execution stage.", "items": { - "$ref": "JobMessage" + "$ref": "ComponentTransform" }, "type": "array" + }, + "componentSource": { + "description": "Collections produced and consumed by component transforms of this stage.", + "items": { + "$ref": "ComponentSource" + }, + "type": "array" + }, + "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." + ], + "enum": [ + "UNKNOWN_KIND", + "PAR_DO_KIND", + "GROUP_BY_KEY_KIND", + "FLATTEN_KIND", + "READ_KIND", + "WRITE_KIND", + "CONSTANT_KIND", + "SINGLETON_KIND", + "SHUFFLE_KIND" + ] } - } + }, + "id": "ExecutionStageSummary" }, - "ApproximateReportedProgress": { + "LogBucket": { + "type": "object", "properties": { - "fractionConsumed": { - "type": "number", - "format": "double", - "description": "Completion as fraction of the input consumed, from 0.0 (beginning, nothing\nconsumed), to 1.0 (end of the input, entire input consumed)." - }, - "consumedParallelism": { - "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the portion of input of this task that has\nalready been consumed and is no longer active. In the first two examples\nabove (see remaining_parallelism), the value should be 29 or 2\nrespectively. The sum of remaining_parallelism and consumed_parallelism\nshould equal the total amount of parallelism in this work item. If\nspecified, must be finite." - }, - "remainingParallelism": { - "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the input of this task that remains,\n(i.e. can be delegated to this task and any new tasks via dynamic\nsplitting). Always at least 1 for non-finished work items and 0 for\nfinished.\n\n\"Amount of parallelism\" refers to how many non-empty parts of the input\ncan be read in parallel. This does not necessarily equal number\nof records. An input that can be read in parallel down to the\nindividual records is called \"perfectly splittable\".\nAn example of non-perfectly parallelizable input is a block-compressed\nfile format where a block of records has to be read as a whole,\nbut different blocks can be read in parallel.\n\nExamples:\n* If we are processing record #30 (starting at 1) out of 50 in a perfectly\n splittable 50-record input, this value should be 21 (20 remaining + 1\n current).\n* If we are reading through block 3 in a block-compressed file consisting\n of 5 blocks, this value should be 3 (since blocks 4 and 5 can be\n processed in parallel by new tasks via dynamic splitting and the current\n task remains processing block 3).\n* If we are reading through the last block in a block-compressed file,\n or reading or processing the last record in a perfectly splittable\n input, this value should be 1, because apart from the current task, no\n additional remainder can be split off." + "log": { + "format": "int32", + "description": "floor(log2(value)); defined to be zero for nonpositive values.\n log(-1) = 0\n log(0) = 0\n log(1) = 0\n log(2) = 1\n log(3) = 1\n log(4) = 2\n log(5) = 2", + "type": "integer" }, - "position": { - "$ref": "Position", - "description": "A Position within the work to represent a progress." + "count": { + "format": "int64", + "description": "Number of values in this bucket.", + "type": "string" } }, - "id": "ApproximateReportedProgress", - "description": "A progress measurement of a WorkItem by a worker.", - "type": "object" + "id": "LogBucket", + "description": "Bucket of values for Distribution's logarithmic histogram." }, - "IntegerList": { - "description": "A metric value representing a list of integers.", - "type": "object", + "SendWorkerMessagesRequest": { "properties": { - "elements": { - "description": "Elements of the list.", + "workerMessages": { + "description": "The WorkerMessages to send.", "items": { - "$ref": "SplitInt64" + "$ref": "WorkerMessage" }, "type": "array" + }, + "location": { + "type": "string", + "description": "The location which contains the job" } }, - "id": "IntegerList" + "id": "SendWorkerMessagesRequest", + "description": "A request for sending worker messages to the service.", + "type": "object" }, - "StateFamilyConfig": { + "SourceSplitShard": { + "description": "DEPRECATED in favor of DerivedSource.", "type": "object", "properties": { - "stateFamily": { - "description": "The state family value.", + "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" }, - "isRead": { - "description": "If true, this family corresponds to a read operation.", - "type": "boolean" + "source": { + "description": "DEPRECATED", + "$ref": "Source" } }, - "id": "StateFamilyConfig", - "description": "State family configuration." + "id": "SourceSplitShard" }, - "ResourceUtilizationReportResponse": { + "CPUTime": { + "id": "CPUTime", + "description": "Modeled after information exposed by /proc/stat.", "type": "object", - "properties": {}, - "id": "ResourceUtilizationReportResponse", - "description": "Service-side response to WorkerMessage reporting resource utilization." + "properties": { + "timestamp": { + "format": "google-datetime", + "description": "Timestamp of the measurement.", + "type": "string" + }, + "totalMs": { + "format": "uint64", + "description": "Total active CPU time across all cores (ie., non-idle) in milliseconds\nsince start-up.", + "type": "string" + }, + "rate": { + "format": "double", + "description": "Average CPU utilization rate (% non-idle cpu / second) since previous\nsample.", + "type": "number" + } + } }, - "SourceSplitResponse": { + "Environment": { + "id": "Environment", + "description": "Describes the environment in which a Dataflow Job runs.", + "type": "object", "properties": { - "shards": { - "description": "DEPRECATED in favor of bundles.", + "internalExperiments": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Experimental settings." + }, + "version": { + "type": "object", + "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." + }, + "serviceAccountEmail": { + "description": "Identity to run virtual machines as. Defaults to the default account.", + "type": "string" + }, + "sdkPipelineOptions": { + "type": "object", + "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." + }, + "userAgent": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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" + }, + "tempStoragePrefix": { + "description": "The prefix of the resources the system should use for temporary\nstorage. The system will append the suffix \"/temp-{JOBNAME} to\nthis resource prefix, where {JOBNAME} is the value of the\njob_name field. The resulting bucket and object prefix is used\nas the prefix of the resources used to store temporary data\nneeded during the job execution. NOTE: This will override the\nvalue in taskrunner_settings.\nThe supported resource type is:\n\nGoogle Cloud Storage:\n\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", + "type": "string" + }, + "workerPools": { + "description": "The worker pools. At least one \"harness\" worker pool must be\nspecified in order for the job to have workers.", "items": { - "$ref": "SourceSplitShard" + "$ref": "WorkerPool" }, "type": "array" }, - "outcome": { - "enum": [ - "SOURCE_SPLIT_OUTCOME_UNKNOWN", - "SOURCE_SPLIT_OUTCOME_USE_CURRENT", - "SOURCE_SPLIT_OUTCOME_SPLITTING_HAPPENED" + "dataset": { + "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}" + }, + "experiments": { + "description": "The list of experiments to enable.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "StreamingComputationTask": { + "type": "object", + "properties": { + "taskType": { + "enum": [ + "STREAMING_COMPUTATION_TASK_UNKNOWN", + "STREAMING_COMPUTATION_TASK_STOP", + "STREAMING_COMPUTATION_TASK_START" ], - "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.", + "description": "A type of streaming computation task.", "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." + "The streaming computation task is unknown, or unspecified.", + "Stop processing specified streaming computation range(s).", + "Start processing specified streaming computation range(s)." ] }, - "bundles": { + "computationRanges": { "items": { - "$ref": "DerivedSource" + "$ref": "StreamingComputationRanges" }, "type": "array", - "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." + "description": "Contains ranges of a streaming computation this task should apply to." + }, + "dataDisks": { + "description": "Describes the set of data disks this task should apply to.", + "items": { + "$ref": "MountedDataDisk" + }, + "type": "array" } }, - "id": "SourceSplitResponse", - "description": "The response to a SourceSplitRequest.", - "type": "object" + "id": "StreamingComputationTask", + "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges." }, - "ParallelInstruction": { - "description": "Describes a particular operation comprising a MapTask.", + "SendDebugCaptureRequest": { + "description": "Request to send encoded debug information.", "type": "object", "properties": { - "systemName": { - "description": "System-defined name of this operation.\nUnique across the workflow.", + "componentId": { + "description": "The internal component id for which debug information is sent.", "type": "string" }, - "write": { - "$ref": "WriteInstruction", - "description": "Additional information for Write instructions." - }, - "partialGroupByKey": { - "$ref": "PartialGroupByKeyInstruction", - "description": "Additional information for PartialGroupByKey instructions." - }, - "outputs": { - "description": "Describes the outputs of the instruction.", - "items": { - "$ref": "InstructionOutput" - }, - "type": "array" - }, - "name": { - "description": "User-provided name of this operation.", + "workerId": { + "description": "The worker id, i.e., VM hostname.", "type": "string" }, - "parDo": { - "description": "Additional information for ParDo instructions.", - "$ref": "ParDoInstruction" - }, - "read": { - "description": "Additional information for Read instructions.", - "$ref": "ReadInstruction" - }, - "flatten": { - "$ref": "FlattenInstruction", - "description": "Additional information for Flatten instructions." + "location": { + "description": "The location which contains the job specified by job_id.", + "type": "string" }, - "originalName": { - "description": "System-defined name for the operation in the original workflow graph.", + "data": { + "description": "The encoded debug information.", "type": "string" } }, - "id": "ParallelInstruction" + "id": "SendDebugCaptureRequest" }, - "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.", + "GetDebugConfigResponse": { + "id": "GetDebugConfigResponse", + "description": "Response to a get debug configuration request.", "type": "object", "properties": { - "name": { - "description": "The name of the package.", + "config": { + "description": "The encoded debug configuration for the requested component.", "type": "string" - }, - "location": { - "type": "string", - "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/" } - }, - "id": "Package" + } }, - "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.", + "ComponentTransform": { + "description": "Description of a transform executed as part of an execution stage.", "type": "object", "properties": { - "end": { - "description": "The end (exclusive) of the key range.", + "name": { + "description": "Dataflow service generated name for this source.", "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\".", + "userName": { + "description": "Human-readable name for this transform; may be user or system generated.", "type": "string" }, - "start": { - "type": "string", - "description": "The start (inclusive) of the key range." + "originalTransform": { + "description": "User name for the original user transform with which this transform is\nmost closely associated.", + "type": "string" } }, - "id": "KeyRangeDataDiskAssignment" + "id": "ComponentTransform" }, - "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.", + "StreamingSetupTask": { + "description": "A task which initializes part of a streaming Dataflow job.", "type": "object", "properties": { - "sideInputs": { - "description": "Zero or more side inputs.", - "items": { - "$ref": "SideInputInfo" - }, - "type": "array" - }, - "multiOutputInfos": { - "description": "Information about each of the outputs, if user_fn is a MultiDoFn.", - "items": { - "$ref": "MultiOutputInfo" - }, - "type": "array" + "receiveWorkPort": { + "type": "integer", + "format": "int32", + "description": "The TCP port on which the worker should listen for messages from\nother streaming computation workers." }, - "userFn": { - "description": "The user function to invoke.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } + "streamingComputationTopology": { + "$ref": "TopologyConfig", + "description": "The global topology of the streaming Dataflow job." }, - "input": { - "description": "The input.", - "$ref": "InstructionInput" + "drain": { + "type": "boolean", + "description": "The user has requested drain." }, - "numOutputs": { + "workerHarnessPort": { "format": "int32", - "description": "The number of outputs.", + "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", "type": "integer" } - } - }, - "MetricUpdate": { - "description": "Describes the state of a metric.", - "type": "object", - "properties": { - "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" - }, - "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": { - "type": "string", - "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." - }, - "scalar": { - "type": "any", - "description": "Worker-computed aggregate value for aggregation kinds \"Sum\", \"Max\", \"Min\",\n\"And\", and \"Or\". The possible value types are Long, Double, and Boolean." - }, - "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": { - "format": "google-datetime", - "description": "Timestamp associated with the metric value. Optional when workers are\nreporting work progress; it will be filled in responses from the\nmetrics API.", - "type": "string" - }, - "name": { - "description": "Name of the metric.", - "$ref": "MetricStructuredName" - }, - "distribution": { - "type": "any", - "description": "A struct value describing properties of a distribution of numeric values." - } }, - "id": "MetricUpdate" + "id": "StreamingSetupTask" }, - "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.", + "PubsubLocation": { "type": "object", "properties": { - "originNamespace": { - "description": "A string containing a more specific namespace of the counter's origin.", - "type": "string" - }, - "origin": { - "enumDescriptions": [ - "Counter was created by the Dataflow system.", - "Counter was created by the user." - ], - "enum": [ - "SYSTEM", - "USER" - ], - "description": "One of the standard Origins defined above.", - "type": "string" - }, - "name": { - "description": "Counter name. Not necessarily globally-unique, but unique within the\ncontext of the other fields.\nRequired.", - "type": "string" - }, - "executionStepName": { - "description": "Name of the stage. An execution step contains multiple component steps.", - "type": "string" - }, - "componentStepName": { - "description": "Name of the optimized step being executed by the workers.", - "type": "string" - }, - "portion": { - "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." - ], - "enum": [ - "ALL", - "KEY", - "VALUE" - ] - }, - "originalStepName": { - "description": "System generated name of the original step in the user's graph, before\noptimization.", - "type": "string" + "withAttributes": { + "description": "If true, then the client has requested to get pubsub attributes.", + "type": "boolean" }, - "workerId": { - "description": "ID of a particular worker.", + "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" - } - }, - "id": "CounterStructuredName" - }, - "ApproximateProgress": { - "type": "object", - "properties": { - "percentComplete": { - "type": "number", - "format": "float", - "description": "Obsolete." }, - "remainingTime": { - "format": "google-duration", - "description": "Obsolete.", + "topic": { + "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"", "type": "string" }, - "position": { - "description": "Obsolete.", - "$ref": "Position" - } - }, - "id": "ApproximateProgress", - "description": "Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest." - }, - "WorkerMessageResponse": { - "properties": { - "workerMetricsResponse": { - "description": "Service's response to reporting worker metrics (currently empty).", - "$ref": "ResourceUtilizationReportResponse" + "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" }, - "workerHealthReportResponse": { - "description": "The service's response to a worker's health report.", - "$ref": "WorkerHealthReportResponse" + "subscription": { + "type": "string", + "description": "A pubsub subscription, in the form of\n\"pubsub.googleapis.com/subscriptions/\u003cproject-id\u003e/\u003csubscription-name\u003e\"" + }, + "dropLateData": { + "description": "Indicates whether the pipeline allows late-arriving data.", + "type": "boolean" + }, + "trackingSubscription": { + "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", + "type": "string" } }, - "id": "WorkerMessageResponse", - "description": "A worker_message response allows the server to pass information to the\nsender.", - "type": "object" + "id": "PubsubLocation", + "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job." }, - "TemplateMetadata": { - "id": "TemplateMetadata", - "description": "Metadata describing a template.", + "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": { - "parameters": { - "description": "The parameters for the template.", + "pods": { + "description": "The pods running on the worker. See:\nhttp://kubernetes.io/v1.1/docs/api-reference/v1/definitions.html#_v1_pod\n\nThis field is used by the worker to send the status of the indvidual\ncontainers running on each worker.", "items": { - "$ref": "ParameterMetadata" + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" }, "type": "array" }, - "name": { - "description": "Required. The name of the template.", + "vmStartupTime": { + "format": "google-datetime", + "description": "The time the VM was booted.", "type": "string" }, - "description": { - "description": "Optional. A description of the template.", + "reportInterval": { + "format": "google-duration", + "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.", "type": "string" + }, + "vmIsHealthy": { + "description": "Whether the VM is healthy.", + "type": "boolean" } - } + }, + "id": "WorkerHealthReport" }, - "WorkerMessage": { + "JobMessage": { + "description": "A particular message pertaining to a Dataflow job.", + "type": "object", "properties": { - "time": { - "format": "google-datetime", - "description": "The timestamp of the worker_message.", + "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" }, - "workerHealthReport": { - "description": "The health of a worker.", - "$ref": "WorkerHealthReport" - }, - "workerMetrics": { - "$ref": "ResourceUtilizationReport", - "description": "Resource metrics reported by workers." + "messageText": { + "description": "The text of the message.", + "type": "string" }, - "workerMessageCode": { - "$ref": "WorkerMessageCode", - "description": "A worker message code." + "time": { + "format": "google-datetime", + "description": "The timestamp of the message.", + "type": "string" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels are used to group WorkerMessages.\nFor example, a worker_message about a particular container\nmight have the labels:\n{ \"JOB_ID\": \"2015-04-22\",\n \"WORKER_ID\": \"wordcount-vm-2015…\"\n \"CONTAINER_TYPE\": \"worker\",\n \"CONTAINER_ID\": \"ac1234def\"}\nLabel tags typically correspond to Label enum values. However, for ease\nof development other strings can be used as tags. LABEL_UNSPECIFIED should\nnot be used here.", - "type": "object" + "id": { + "description": "Deprecated.", + "type": "string" } }, - "id": "WorkerMessage", - "description": "WorkerMessage provides information to the backend about a worker.", - "type": "object" + "id": "JobMessage" }, - "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.", + "ParameterMetadata": { + "description": "Metadata for a specific parameter.", "type": "object", "properties": { - "metrics": { - "description": "All metrics for this job.", + "regexes": { + "description": "Optional. Regexes that the parameter must match.", "items": { - "$ref": "MetricUpdate" + "type": "string" }, "type": "array" }, - "metricTime": { - "format": "google-datetime", - "description": "Timestamp as of which metric values are current.", + "label": { + "type": "string", + "description": "Required. The label to display for the parameter." + }, + "helpText": { + "description": "Required. The help text to display for the parameter.", + "type": "string" + }, + "isOptional": { + "description": "Optional. Whether the parameter is optional. Defaults to false.", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the parameter.", "type": "string" } }, - "id": "JobMetrics" + "id": "ParameterMetadata" }, - "FloatingPointList": { - "description": "A metric value representing a list of floating point numbers.", - "type": "object", + "MultiOutputInfo": { "properties": { - "elements": { - "description": "Elements of the list.", - "items": { - "format": "double", - "type": "number" - }, - "type": "array" + "tag": { + "description": "The id of the tag the user code will emit to this output by; this\nshould correspond to the tag of some SideInputInfo.", + "type": "string" } }, - "id": "FloatingPointList" + "id": "MultiOutputInfo", + "description": "Information about an output of a multi-output DoFn.", + "type": "object" }, - "CounterUpdate": { + "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": { - "integer": { - "description": "Integer value for Sum, Max, Min.", - "$ref": "SplitInt64" - }, - "integerList": { - "$ref": "IntegerList", - "description": "List of integers, for Set." - }, - "structuredNameAndMetadata": { - "$ref": "CounterStructuredNameAndMetadata", - "description": "Counter structured name and metadata." - }, - "integerMean": { - "$ref": "IntegerMean", - "description": "Integer mean aggregation value for Mean." - }, - "floatingPoint": { - "format": "double", - "description": "Floating point value for Sum, Max, Min.", - "type": "number" - }, - "cumulative": { - "type": "boolean", - "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." - }, - "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": { - "description": "Boolean value for And, Or.", - "type": "boolean" - }, - "nameAndKind": { - "$ref": "NameAndKind", - "description": "Counter name and aggregation type." - }, - "distribution": { - "description": "Distribution data", - "$ref": "DistributionUpdate" - }, - "stringList": { - "$ref": "StringList", - "description": "List of strings, for Set." - }, - "shortId": { - "format": "int64", - "description": "The service-generated short identifier for this counter.\nThe short_id -\u003e (name, metadata) mapping is constant for the lifetime of\na job.", - "type": "string" + "options": { + "description": "Hints for tuning the splitting process.", + "$ref": "SourceSplitOptions" }, - "floatingPointList": { - "$ref": "FloatingPointList", - "description": "List of floating point numbers, for Set." + "source": { + "$ref": "Source", + "description": "Specification of the source to be split." } }, - "id": "CounterUpdate", - "description": "An update to a Counter sent from a worker." + "id": "SourceSplitRequest" }, - "SourceMetadata": { - "description": "Metadata about a Source useful for automatically optimizing\nand tuning the pipeline, etc.", + "SourceGetMetadataResponse": { + "description": "The result of a SourceGetMetadataOperation.", "type": "object", "properties": { - "estimatedSizeBytes": { - "format": "int64", - "description": "An estimate of the total size (in bytes) of the data that would be\nread from this source. This estimate is in terms of external storage\nsize, before any decompression or other processing done by the reader.", - "type": "string" - }, - "infinite": { - "description": "Specifies that the size of this source is known to be infinite\n(this is a streaming source).", - "type": "boolean" - }, - "producesSortedKeys": { - "description": "Whether this source is known to produce key/value pairs with\nthe (encoded) keys in lexicographically sorted order.", - "type": "boolean" + "metadata": { + "description": "The computed metadata.", + "$ref": "SourceMetadata" } }, - "id": "SourceMetadata" + "id": "SourceGetMetadataResponse" }, - "DistributionUpdate": { - "description": "A metric value representing a distribution.", + "AutoscalingEvent": { + "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice.", "type": "object", "properties": { - "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." - }, - "max": { - "description": "The maximum value present in the distribution.", - "$ref": "SplitInt64" + "currentNumWorkers": { + "format": "int64", + "description": "The current number of workers the job has.", + "type": "string" }, - "logBuckets": { - "description": "(Optional) Logarithmic histogram of values.\nEach log may be in no more than one bucket. Order does not matter.", - "items": { - "$ref": "LogBucket" - }, - "type": "array" + "time": { + "format": "google-datetime", + "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", + "type": "string" }, - "count": { - "description": "The count of the number of elements present in the distribution.", - "$ref": "SplitInt64" + "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." }, - "min": { - "$ref": "SplitInt64", - "description": "The minimum value present in the distribution." + "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." + ], + "enum": [ + "TYPE_UNKNOWN", + "TARGET_NUM_WORKERS_CHANGED", + "CURRENT_NUM_WORKERS_CHANGED", + "ACTUATION_FAILURE", + "NO_CHANGE" + ], + "description": "The type of autoscaling event to report.", + "type": "string" }, - "sumOfSquares": { - "format": "double", - "description": "Use a double since the sum of squares is likely to overflow int64.", - "type": "number" + "targetNumWorkers": { + "type": "string", + "format": "int64", + "description": "The target number of workers the worker pool wants to resize to use." } }, - "id": "DistributionUpdate" + "id": "AutoscalingEvent" }, - "SourceFork": { - "description": "DEPRECATED in favor of DynamicSourceSplit.", + "MetricShortId": { + "id": "MetricShortId", + "description": "The metric short id is returned to the user alongside an offset into\nReportWorkItemStatusRequest", "type": "object", "properties": { - "residualSource": { - "$ref": "DerivedSource", - "description": "DEPRECATED" - }, - "primary": { - "description": "DEPRECATED", - "$ref": "SourceSplitShard" - }, - "primarySource": { - "$ref": "DerivedSource", - "description": "DEPRECATED" + "metricIndex": { + "format": "int32", + "description": "The index of the corresponding metric in\nthe ReportWorkItemStatusRequest. Required.", + "type": "integer" }, - "residual": { - "$ref": "SourceSplitShard", - "description": "DEPRECATED" + "shortId": { + "format": "int64", + "description": "The service-generated short identifier for the metric.", + "type": "string" } - }, - "id": "SourceFork" + } }, - "WorkerHealthReportResponse": { - "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", + "ShellTask": { "type": "object", "properties": { - "reportInterval": { - "format": "google-duration", - "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.", + "command": { + "description": "The shell command to run.", "type": "string" + }, + "exitCode": { + "format": "int32", + "description": "Exit code for the task.", + "type": "integer" } }, - "id": "WorkerHealthReportResponse" + "id": "ShellTask", + "description": "A task which consists of a shell command for the worker to execute." }, - "WorkItemStatus": { - "description": "Conveys a worker's progress through the work described by a WorkItem.", + "TaskRunnerSettings": { + "id": "TaskRunnerSettings", + "description": "Taskrunner configuration settings.", "type": "object", "properties": { - "sourceFork": { - "description": "DEPRECATED in favor of dynamic_source_split.", - "$ref": "SourceFork" - }, - "counterUpdates": { - "description": "Worker output counters for this WorkItem.", - "items": { - "$ref": "CounterUpdate" - }, - "type": "array" - }, - "workItemId": { - "description": "Identifies the WorkItem.", + "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" }, - "errors": { - "description": "Specifies errors which occurred during processing. If errors are\nprovided, and completed = true, then the WorkItem is considered\nto have failed.", - "items": { - "$ref": "Status" - }, - "type": "array" - }, - "metricUpdates": { - "description": "DEPRECATED in favor of counter_updates.", - "items": { - "$ref": "MetricUpdate" - }, - "type": "array" - }, - "dynamicSourceSplit": { - "$ref": "DynamicSourceSplit", - "description": "See documentation of stop_position." + "logToSerialconsole": { + "description": "Whether to send taskrunner log info to Google Compute Engine VM serial\nconsole.", + "type": "boolean" }, - "sourceOperationResponse": { - "$ref": "SourceOperationResponse", - "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation." + "continueOnException": { + "description": "Whether to continue taskrunner if an exception is hit.", + "type": "boolean" }, - "progress": { - "description": "DEPRECATED in favor of reported_progress.", - "$ref": "ApproximateProgress" + "parallelWorkerSettings": { + "$ref": "WorkerSettings", + "description": "The settings to pass to the parallel worker harness." }, - "requestedLeaseDuration": { - "format": "google-duration", - "description": "Amount of time the worker requests for its lease.", - "type": "string" + "vmId": { + "type": "string", + "description": "The ID string of the VM." }, - "reportIndex": { - "format": "int64", - "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.", + "taskUser": { + "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\".", "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).", + "alsologtostderr": { + "description": "Whether to also send taskrunner log info to stderr.", "type": "boolean" }, - "reportedProgress": { - "$ref": "ApproximateReportedProgress", - "description": "The worker's progress through this WorkItem." - } - }, - "id": "WorkItemStatus" - }, - "ComponentSource": { - "description": "Description of an interstitial value between transforms in an execution\nstage.", - "type": "object", - "properties": { - "name": { - "description": "Dataflow service generated name for this source.", - "type": "string" - }, - "userName": { - "description": "Human-readable name for this transform; may be user or system generated.", - "type": "string" + "taskGroup": { + "type": "string", + "description": "The UNIX group ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"wheel\"." }, - "originalTransformOrCollection": { - "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "harnessCommand": { + "description": "The command to launch the worker harness.", "type": "string" - } - }, - "id": "ComponentSource" - }, - "WorkItemServiceState": { - "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker.", - "type": "object", - "properties": { - "suggestedStopPosition": { - "description": "Obsolete, always empty.", - "$ref": "Position" }, - "reportStatusInterval": { - "format": "google-duration", - "description": "New recommended reporting interval.", + "logDir": { + "description": "The directory on the VM to store logs.", "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": { - "format": "google-datetime", - "description": "Time at which the current lease will expire.", - "type": "string" + "dataflowApiVersion": { + "type": "string", + "description": "The API version of endpoint, e.g. \"v1b3\"" }, - "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.", + "oauthScopes": { + "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", "items": { - "$ref": "MetricShortId" + "type": "string" }, "type": "array" }, - "nextReportIndex": { - "format": "int64", - "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.", + "streamingWorkerMainClass": { + "description": "The streaming worker main class name.", "type": "string" }, - "suggestedStopPoint": { - "$ref": "ApproximateProgress", - "description": "DEPRECATED in favor of split_request." + "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" }, - "splitRequest": { - "$ref": "ApproximateSplitRequest", - "description": "The progress point in the WorkItem where the Dataflow service\nsuggests that the worker truncate the task." - } - }, - "id": "WorkItemServiceState" - }, - "MetricStructuredName": { - "properties": { - "name": { - "description": "Worker-defined metric name.", + "workflowFileName": { + "description": "The file to store the workflow in.", "type": "string" }, - "origin": { - "description": "Origin (namespace) of metric name. May be blank for user-define metrics;\nwill be \"dataflow\" for metrics defined by the Dataflow service or SDK.", + "languageHint": { + "description": "The suggested backend language.", "type": "string" }, - "context": { - "type": "object", - "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." - } - }, - "id": "MetricStructuredName", - "description": "Identifies a metric, by describing the source which generated the\nmetric.", - "type": "object" - }, - "SeqMapTaskOutputInfo": { - "description": "Information about an output of a SeqMapTask.", - "type": "object", - "properties": { - "sink": { - "description": "The sink to write the output value to.", - "$ref": "Sink" + "commandlinesFileName": { + "description": "The file to store preprocessing commands in.", + "type": "string" }, - "tag": { - "description": "The id of the TupleTag the user code will tag the output value by.", + "baseTaskDir": { + "description": "The location on the worker for task-specific subdirectories.", + "type": "string" + }, + "tempStoragePrefix": { + "description": "The prefix of the resources the taskrunner should use for\ntemporary storage.\n\nThe supported resource type is:\n\nGoogle Cloud Storage:\n storage.googleapis.com/{bucket}/{object}\n bucket.storage.googleapis.com/{object}", "type": "string" } - }, - "id": "SeqMapTaskOutputInfo" - }, - "JobExecutionStageInfo": { - "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", - "type": "object", - "properties": { - "stepName": { - "items": { - "type": "string" - }, - "type": "array", - "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." - } - }, - "id": "JobExecutionStageInfo" + } }, - "KeyRangeLocation": { + "Position": { "type": "object", "properties": { - "deprecatedPersistentDirectory": { - "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem.", + "recordIndex": { + "format": "int64", + "description": "Position is a record index.", "type": "string" }, - "deliveryEndpoint": { - "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", + "shufflePosition": { + "description": "CloudPosition is a base64 encoded BatchShufflePosition (with FIXED\nsharding).", "type": "string" }, - "dataDisk": { - "type": "string", - "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\"." - }, - "start": { - "description": "The start (inclusive) of the key range.", + "byteOffset": { + "format": "int64", + "description": "Position is a byte offset.", "type": "string" }, + "concatPosition": { + "description": "CloudPosition is a concat position.", + "$ref": "ConcatPosition" + }, "end": { - "description": "The end (exclusive) of the key range.", + "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": "KeyRangeLocation", - "description": "Location information for a specific key-range of a sharded computation.\nCurrently we only support UTF-8 character splits to simplify encoding into\nJSON." + "id": "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." }, - "SourceGetMetadataRequest": { - "description": "A request to compute the SourceMetadata of a Source.", + "SplitInt64": { + "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", "type": "object", "properties": { - "source": { - "description": "Specification of the source whose metadata should be computed.", - "$ref": "Source" + "highBits": { + "format": "int32", + "description": "The high order bits, including the sign: n \u003e\u003e 32.", + "type": "integer" + }, + "lowBits": { + "format": "uint32", + "description": "The low order bits: n & 0xffffffff.", + "type": "integer" } }, - "id": "SourceGetMetadataRequest" + "id": "SplitInt64" }, - "NameAndKind": { + "Source": { + "description": "A source that records can be read and decoded from.", "type": "object", "properties": { - "name": { - "description": "Name of the counter.", + "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" + }, + "codec": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The codec to use to decode data read from the source." + }, + "spec": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "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).", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "id": "Source" + }, + "WorkerPool": { + "properties": { + "network": { + "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", "type": "string" }, - "kind": { + "defaultPackageSet": { "enum": [ - "INVALID", - "SUM", - "MAX", - "MIN", - "MEAN", - "OR", - "AND", - "SET", - "DISTRIBUTION" + "DEFAULT_PACKAGE_SET_UNKNOWN", + "DEFAULT_PACKAGE_SET_NONE", + "DEFAULT_PACKAGE_SET_JAVA", + "DEFAULT_PACKAGE_SET_PYTHON" ], - "description": "Counter aggregation kind.", + "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": [ - "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." + "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." ] - } - }, - "id": "NameAndKind", - "description": "Basic metadata about a counter." - }, - "SeqMapTask": { - "description": "Describes a particular function to invoke.", - "type": "object", - "properties": { - "inputs": { - "description": "Information about each of the inputs.", + }, + "numThreadsPerWorker": { + "format": "int32", + "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).", + "type": "integer" + }, + "numWorkers": { + "format": "int32", + "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.", + "type": "integer" + }, + "zone": { + "description": "Zone to run the worker pools in. If empty or unspecified, the service\nwill attempt to choose a reasonable default.", + "type": "string" + }, + "diskSourceImage": { + "type": "string", + "description": "Fully qualified source image for disks." + }, + "packages": { + "description": "Packages to be installed on workers.", "items": { - "$ref": "SideInputInfo" + "$ref": "Package" }, "type": "array" }, - "stageName": { - "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", - "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" + ] }, - "systemName": { - "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", + "onHostMaintenance": { + "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", "type": "string" }, - "userFn": { - "description": "The user function to invoke.", - "type": "object", + "poolArgs": { "additionalProperties": { - "description": "Properties of the object.", + "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - } + }, + "description": "Extra arguments for this worker pool.", + "type": "object" }, - "name": { - "description": "The user-provided name of the SeqDo operation.", + "diskSizeGb": { + "format": "int32", + "description": "Size of root disk for VMs, in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "type": "integer" + }, + "workerHarnessContainerImage": { + "description": "Required. Docker container image that executes the Cloud Dataflow worker\nharness, residing in Google Container Registry.", "type": "string" }, - "outputInfos": { - "description": "Information about each of the outputs.", + "diskType": { + "description": "Type of root disk for VMs. If empty or unspecified, the service will\nattempt to choose a reasonable default.", + "type": "string" + }, + "machineType": { + "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", + "type": "string" + }, + "kind": { + "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", + "type": "string" + }, + "dataDisks": { "items": { - "$ref": "SeqMapTaskOutputInfo" + "$ref": "Disk" }, - "type": "array" + "type": "array", + "description": "Data disks that are used by a VM in this workflow." + }, + "subnetwork": { + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", + "type": "string" + }, + "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." + ] + }, + "autoscalingSettings": { + "description": "Settings for autoscaling of this WorkerPool.", + "$ref": "AutoscalingSettings" + }, + "taskrunnerSettings": { + "description": "Settings passed through to Google Compute Engine workers when\nusing the standard Dataflow task runner. Users should ignore\nthis field.", + "$ref": "TaskRunnerSettings" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata to set on the Google Compute Engine VMs.", + "type": "object" } }, - "id": "SeqMapTask" + "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" }, - "WorkerMessageCode": { - "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).", + "SourceOperationRequest": { + "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", "type": "object", "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" + "getMetadata": { + "description": "Information about a request to get metadata about a source.", + "$ref": "SourceGetMetadataRequest" }, - "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" + "split": { + "$ref": "SourceSplitRequest", + "description": "Information about a request to split a source." } - } + }, + "id": "SourceOperationRequest" } }, + "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/", "auth": { @@ -4971,19 +4985,5 @@ } } } - }, - "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": "20170712", - "documentationLink": "https://cloud.google.com/dataflow", - "id": "dataflow:v1b3", - "title": "Google Dataflow API", - "discoveryVersion": "v1", - "ownerName": "Google" + } } diff --git a/DiscoveryJson/dataproc_v1.json b/DiscoveryJson/dataproc_v1.json index ef3f82c04f..88df281a6a 100644 --- a/DiscoveryJson/dataproc_v1.json +++ b/DiscoveryJson/dataproc_v1.json @@ -1,159 +1,71 @@ { + "rootUrl": "https://dataproc.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", "name": "dataproc", "batchPath": "batch", - "revision": "20170712", - "documentationLink": "https://cloud.google.com/dataproc/", "id": "dataproc:v1", + "documentationLink": "https://cloud.google.com/dataproc/", + "revision": "20170712", "title": "Google Cloud Dataproc API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "projects": { "resources": { "regions": { "resources": { - "operations": { + "jobs": { "methods": { - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "httpMethod": "GET", + "submit": { + "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", + "id": "dataproc.projects.regions.jobs.submit", + "request": { + "$ref": "SubmitJobRequest" + }, + "description": "Submits a job to a cluster.", + "httpMethod": "POST", "parameterOrder": [ - "name" + "projectId", + "region" ], "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" - } + "$ref": "Job" }, "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" - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations$", "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations", - "path": "v1/{+name}", - "id": "dataproc.projects.regions.operations.list", - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." - }, - "cancel": { - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "id": "dataproc.projects.regions.operations.cancel", - "path": "v1/{+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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs:submit" }, "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.", + "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "dataproc.projects.regions.operations.delete" - } - } - }, - "jobs": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, "parameterOrder": [ "projectId", "region", "jobId" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true, - "location": "path" - }, "jobId": { "description": "Required. The job ID.", "type": "string", @@ -161,16 +73,21 @@ "location": "path" }, "projectId": { + "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", + "required": true + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", "required": true, "location": "path" } }, "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.", @@ -182,59 +99,61 @@ "region" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Optional. The number of results to return in each response.", - "type": "integer" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true, - "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." + "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.", "type": "string", "required": true, - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." + "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 INACTIVE. 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" + "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).", - "type": "string" + "type": "string", + "location": "query" }, "pageToken": { - "location": "query", "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string" + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "Optional. The number of results to return in each response.", + "type": "integer", + "location": "query" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", + "required": true, + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectId}/regions/{region}/jobs", "id": "dataproc.projects.regions.jobs.list", "path": "v1/projects/{projectId}/regions/{region}/jobs" }, "cancel": { + "id": "dataproc.projects.regions.jobs.cancel", + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", "request": { "$ref": "CancelJobRequest" }, @@ -265,28 +184,34 @@ "location": "path" }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", - "id": "dataproc.projects.regions.jobs.cancel", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel" + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel" }, - "get": { - "description": "Gets the resource representation for a job in a project.", - "httpMethod": "GET", - "response": { - "$ref": "Job" - }, + "patch": { + "httpMethod": "PATCH", "parameterOrder": [ "projectId", "region", "jobId" ], + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "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.", + "type": "string" + }, "region": { "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", @@ -294,38 +219,36 @@ "required": true }, "jobId": { - "type": "string", - "required": true, "location": "path", - "description": "Required. The job ID." + "description": "Required. The job ID.", + "type": "string", + "required": true }, "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", - "required": true + "required": true, + "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.get" + "id": "dataproc.projects.regions.jobs.patch", + "request": { + "$ref": "Job" + }, + "description": "Updates a job in a project." }, - "patch": { - "httpMethod": "PATCH", + "get": { + "response": { + "$ref": "Job" + }, "parameterOrder": [ "projectId", "region", "jobId" ], - "response": { - "$ref": "Job" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "GET", "parameters": { "jobId": { "description": "Required. The job ID.", @@ -334,47 +257,49 @@ "location": "path" }, "projectId": { + "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", - "required": true, - "location": "path" - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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.", - "type": "string" + "required": true }, "region": { + "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.get", "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.patch", - "request": { - "$ref": "Job" - }, - "description": "Updates a job in a project." - }, - "submit": { - "id": "dataproc.projects.regions.jobs.submit", - "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", - "description": "Submits a job to a cluster.", + "description": "Gets the resource representation for a job in a project." + } + } + }, + "clusters": { + "methods": { + "diagnose": { + "id": "dataproc.projects.regions.clusters.diagnose", + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", "request": { - "$ref": "SubmitJobRequest" + "$ref": "DiagnoseClusterRequest" }, + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", "response": { - "$ref": "Job" + "$ref": "Operation" }, "parameterOrder": [ "projectId", - "region" + "region", + "clusterName" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "region": { "location": "path", @@ -382,88 +307,97 @@ "type": "string", "required": true }, + "clusterName": { + "location": "path", + "description": "Required. The cluster name.", + "type": "string", + "required": true + }, "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs:submit" - } - } - }, - "clusters": { - "methods": { - "list": { - "httpMethod": "GET", + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose" + }, + "delete": { "response": { - "$ref": "ListClustersResponse" + "$ref": "Operation" }, "parameterOrder": [ "projectId", - "region" + "region", + "clusterName" ], + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. The standard List page token.", - "type": "string" + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", + "required": true, + "location": "path" }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Optional. The standard List page size.", - "type": "integer" + "clusterName": { + "location": "path", + "description": "Required. The cluster name.", + "type": "string", + "required": true }, "projectId": { "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", "required": true - }, - "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 = *" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true, - "location": "path" } }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", - "path": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list", - "description": "Lists all regions/{region}/clusters in a project." + "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." }, - "create": { + "list": { + "id": "dataproc.projects.regions.clusters.list", + "path": "v1/projects/{projectId}/regions/{region}/clusters", + "description": "Lists all regions/{region}/clusters in a project.", "response": { - "$ref": "Operation" + "$ref": "ListClustersResponse" }, "parameterOrder": [ "projectId", "region" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "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" + }, "region": { "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", "required": true, "location": "path" }, + "pageToken": { + "description": "Optional. The standard List page token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "Optional. The standard List page size.", + "type": "integer", + "location": "query" + }, "projectId": { "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", @@ -471,81 +405,59 @@ "location": "path" } }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", - "path": "v1/projects/{projectId}/regions/{region}/clusters", - "request": { - "$ref": "Cluster" - }, - "description": "Creates a cluster in a project." + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters" }, - "patch": { - "response": { - "$ref": "Operation" - }, + "create": { + "httpMethod": "POST", "parameterOrder": [ "projectId", - "region", - "clusterName" + "region" ], - "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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", - "type": "string" - }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true - }, - "clusterName": { - "description": "Required. The cluster name.", - "type": "string", "required": true, "location": "path" }, "projectId": { - "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", - "required": true, - "location": "path" + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.patch", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "description": "Updates a cluster 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": "Cluster" } }, "get": { - "httpMethod": "GET", + "id": "dataproc.projects.regions.clusters.get", + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "description": "Gets the resource representation for a cluster in a project.", + "response": { + "$ref": "Cluster" + }, "parameterOrder": [ "projectId", "region", "clusterName" ], - "response": { - "$ref": "Cluster" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true, - "location": "path" - }, "clusterName": { "location": "path", "description": "Required. The cluster name.", @@ -553,79 +465,38 @@ "required": true }, "projectId": { - "type": "string", - "required": true, "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." - } - }, - "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." - }, - "diagnose": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", - "required": true, - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." + "required": true }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true - }, - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose", - "path": "v1/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" - } + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}" }, - "delete": { - "description": "Deletes a cluster in a project.", - "httpMethod": "DELETE", + "patch": { + "request": { + "$ref": "Cluster" + }, + "description": "Updates a cluster in a project.", + "response": { + "$ref": "Operation" + }, "parameterOrder": [ "projectId", "region", "clusterName" ], - "response": { - "$ref": "Operation" - }, + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true - }, "clusterName": { "description": "Required. The cluster name.", "type": "string", @@ -634,14 +505,146 @@ }, "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 the cluster belongs to.", "type": "string", "required": true + }, + "updateMask": { + "format": "google-fieldmask", + "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", + "type": "string", + "location": "query" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", + "required": true, + "location": "path" } }, "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.delete" + "id": "dataproc.projects.regions.clusters.patch", + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}" + } + } + }, + "operations": { + "methods": { + "cancel": { + "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", + "path": "v1/{+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." + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "id": "dataproc.projects.regions.operations.delete", + "path": "v1/{+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." + }, + "get": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "id": "dataproc.projects.regions.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." + }, + "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^projects/[^/]+/regions/[^/]+/operations$", + "location": "path", + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + }, + "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." } } } @@ -651,71 +654,55 @@ } }, "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" - ], + "access_token": { "location": "query", - "description": "Data format for response.", - "default": "json" + "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" - }, - "access_token": { - "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.", + "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": { - "default": "true", - "type": "boolean", "location": "query", - "description": "Pretty-print response." + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" }, "oauth_token": { + "description": "OAuth 2.0 token for the current user.", "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." + "location": "query" }, "bearer_token": { - "type": "string", "location": "query", - "description": "OAuth bearer token." + "description": "OAuth bearer token.", + "type": "string" }, "upload_protocol": { + "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "type": "string" }, "prettyPrint": { - "default": "true", - "type": "boolean", "location": "query", - "description": "Returns response with indentations and line breaks." + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "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": { - "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" }, @@ -725,7 +712,6 @@ "type": "string" }, "$.xgafv": { - "location": "query", "enum": [ "1", "2" @@ -735,1251 +721,1268 @@ "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" } }, "schemas": { - "ClusterStatus": { - "description": "The status of a cluster and its instances.", + "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": { - "substate": { - "enumDescriptions": [ - "", - "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" - }, - "stateStartTime": { - "format": "google-datetime", - "description": "Output-only. Time when this state was entered.", - "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" }, - "detail": { - "description": "Output-only. Optional details of cluster's state.", - "type": "string" + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" }, - "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.", + "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": "ClusterStatus" + "id": "Status" }, - "PigJob": { - "id": "PigJob", - "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", - "type": "object", + "JobScheduling": { "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" - }, - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains the Pig queries.", + "maxFailuresPerHour": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "JobScheduling", + "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release.", + "type": "object" + }, + "InstanceGroupConfig": { + "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group.", + "type": "object", + "properties": { + "diskConfig": { + "$ref": "DiskConfig", + "description": "Optional. Disk option config settings." + }, + "managedGroupConfig": { + "description": "Output-only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", + "$ref": "ManagedGroupConfig" + }, + "isPreemptible": { + "description": "Optional. Specifies that this instance group contains preemptible instances.", + "type": "boolean" + }, + "imageUri": { + "description": "Output-only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", "type": "string" }, - "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.", + "machineTypeUri": { + "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", + "type": "string" + }, + "instanceNames": { + "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name).", "items": { "type": "string" }, "type": "array" }, - "scriptVariables": { - "additionalProperties": { - "type": "string" + "accelerators": { + "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "items": { + "$ref": "AcceleratorConfig" }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", - "type": "object" - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." + "type": "array" }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code." + "numInstances": { + "format": "int32", + "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", + "type": "integer" } - } + }, + "id": "InstanceGroupConfig" }, - "ClusterOperation": { - "id": "ClusterOperation", - "type": "object", + "ListJobsResponse": { "properties": { - "error": { - "description": "Output-only Error, if operation failed.", + "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" }, - "operationId": { - "description": "Output-only The id of the cluster operation.", - "type": "string" + "jobs": { + "description": "Output-only. Jobs list.", + "items": { + "$ref": "Job" + }, + "type": "array" } - } + }, + "id": "ListJobsResponse", + "description": "A list of jobs in a project.", + "type": "object" }, - "WorkflowMetadata": { - "description": "A Cloud Dataproc workflow template resource.", - "type": "object", + "NodeInitializationAction": { "properties": { - "graph": { - "$ref": "WorkflowGraph", - "description": "Output-only The workflow graph." - }, - "version": { - "format": "int32", - "description": "Output-only The version of template at the time of workflow instantiation.", - "type": "integer" - }, - "template": { - "description": "Output-only The \"resource name\" of the template.", + "executableFile": { + "description": "Required. Google Cloud Storage URI of executable file.", "type": "string" }, - "deleteCluster": { - "description": "Output-only The delete cluster operation metadata.", - "$ref": "ClusterOperation" - }, - "state": { - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." - ], - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" - ], - "description": "Output-only The workflow state.", + "executionTimeout": { + "format": "google-duration", + "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.", "type": "string" - }, - "createCluster": { - "description": "Output-only The create cluster operation metadata.", - "$ref": "ClusterOperation" } }, - "id": "WorkflowMetadata" + "id": "NodeInitializationAction", + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "type": "object" }, - "ListClustersResponse": { + "CancelJobRequest": { + "description": "A request to cancel a job.", "type": "object", + "properties": {}, + "id": "CancelJobRequest" + }, + "SparkSqlJob": { "properties": { - "nextPageToken": { - "description": "Output-only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent ListClustersRequest.", + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", + "type": "object" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", "type": "string" }, - "clusters": { - "description": "Output-only. The clusters in the project.", + "scriptVariables": { + "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.", "items": { - "$ref": "Cluster" + "type": "string" }, "type": "array" + }, + "loggingConfig": { + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" } }, - "id": "ListClustersResponse", - "description": "The list of all clusters in a project." + "id": "SparkSqlJob", + "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", + "type": "object" }, - "Job": { - "description": "A Cloud Dataproc job resource.", + "Cluster": { + "description": "Describes the identifying information, config, and status of a cluster of Google Compute Engine instances.", "type": "object", "properties": { - "hadoopJob": { - "$ref": "HadoopJob", - "description": "Job is a Hadoop job." - }, - "placement": { - "$ref": "JobPlacement", - "description": "Required. Job information, including how, when, and where to run the job." + "statusHistory": { + "description": "Output-only. The previous cluster status.", + "items": { + "$ref": "ClusterStatus" + }, + "type": "array" }, - "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." + "config": { + "$ref": "ClusterConfig", + "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." }, - "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.", + "clusterName": { + "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", "type": "string" }, - "scheduling": { - "$ref": "JobScheduling", - "description": "Optional. Job scheduling configuration." - }, - "pigJob": { - "description": "Job is a Pig job.", - "$ref": "PigJob" + "clusterUuid": { + "description": "Output-only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", + "type": "string" }, - "hiveJob": { - "$ref": "HiveJob", - "description": "Job is a Hive job." + "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 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", "additionalProperties": { "type": "string" - } - }, - "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." + }, + "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" }, - "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." + "status": { + "$ref": "ClusterStatus", + "description": "Output-only. Cluster status." }, - "statusHistory": { - "description": "Output-only. The previous job status.", - "items": { - "$ref": "JobStatus" - }, - "type": "array" + "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." + } + }, + "id": "Cluster" + }, + "ListOperationsResponse": { + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "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.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "YarnApplication" + "$ref": "Operation" }, "type": "array" - }, - "pysparkJob": { - "description": "Job is a Pyspark job.", - "$ref": "PySparkJob" - }, - "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" + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, - "SparkJob": { - "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", + "SoftwareConfig": { + "description": "Specifies the selection and config of software inside the cluster.", "type": "object", "properties": { + "imageVersion": { + "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "type": "string" + }, "properties": { "additionalProperties": { "type": "string" }, - "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "description": "Optional. 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.xml", "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." } }, - "id": "SparkJob" + "id": "SoftwareConfig" }, - "JobStatus": { + "JobPlacement": { + "description": "Cloud Dataproc job config.", + "type": "object", "properties": { - "details": { - "description": "Output-only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "clusterUuid": { + "description": "Output-only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", "type": "string" }, - "state": { - "enumDescriptions": [ - "The job state is unknown.", - "The job is pending; it has been submitted, but is not yet running.", - "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", - "The job is running on the cluster.", - "A CancelJob request has been received, but is pending.", - "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", - "The job cancellation was successful.", - "The job has completed successfully.", - "The job has completed, but encountered an error.", - "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." - ], - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "SETUP_DONE", - "RUNNING", - "CANCEL_PENDING", - "CANCEL_STARTED", - "CANCELLED", - "DONE", - "ERROR", - "ATTEMPT_FAILURE" - ], - "description": "Output-only. A state message specifying the overall job state.", + "clusterName": { + "description": "Required. The name of the cluster where the job will be submitted.", "type": "string" - }, + } + }, + "id": "JobPlacement" + }, + "ClusterStatus": { + "description": "The status of a cluster and its instances.", + "type": "object", + "properties": { "substate": { - "enumDescriptions": [ - "", - "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", + "UNHEALTHY", "STALE_STATUS" ], - "description": "Output-only. Additional state information, which includes status reported by the agent.", - "type": "string" + "description": "Output-only. Additional state information that includes status reported by the agent.", + "type": "string", + "enumDescriptions": [ + "", + "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." + ] }, "stateStartTime": { "format": "google-datetime", - "description": "Output-only. The time when this state was entered.", - "type": "string" - } - }, - "id": "JobStatus", - "description": "Cloud Dataproc job status.", - "type": "object" - }, - "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.", + "description": "Output-only. Time when this state was entered.", "type": "string" }, - "instanceTemplateName": { - "description": "Output-only. The name of the Instance Template used for the Managed Instance Group.", - "type": "string" - } - } - }, - "ClusterOperationStatus": { - "id": "ClusterOperationStatus", - "description": "The status of the operation.", - "type": "object", - "properties": { - "details": { - "description": "Output-only.A message containing any operation metadata details.", + "detail": { + "description": "Output-only. Optional details of cluster's state.", "type": "string" }, "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", + "CREATING", "RUNNING", - "DONE" - ] - }, - "innerState": { - "description": "Output-only. A message containing the detailed operation state.", - "type": "string" - }, - "stateStartTime": { + "ERROR", + "DELETING", + "UPDATING" + ], + "description": "Output-only. The cluster's state.", "type": "string", - "format": "google-datetime", - "description": "Output-only. The time this state was entered." + "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." + ] } - } + }, + "id": "ClusterStatus" }, - "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", + "PigJob": { "properties": { - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", - "items": { - "type": "string" - }, - "type": "array" + "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" }, - "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'", + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains the Pig queries.", "type": "string" }, "jarFileUris": { - "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", "items": { "type": "string" }, "type": "array" }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { - "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", + "scriptVariables": { "additionalProperties": { "type": "string" - } - }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "items": { - "type": "string" }, - "type": "array" + "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "type": "object" }, - "fileUris": { - "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", - "items": { + "loggingConfig": { + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" + }, + "properties": { + "additionalProperties": { "type": "string" }, - "type": "array" - }, - "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" + "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": "HadoopJob" + "id": "PigJob", + "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", + "type": "object" }, - "QueryList": { - "description": "A list of queries to run on a cluster.", - "type": "object", + "ListClustersResponse": { "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", + "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" + }, + "clusters": { + "description": "Output-only. The clusters in the project.", "items": { - "type": "string" + "$ref": "Cluster" }, "type": "array" } }, - "id": "QueryList" + "id": "ListClustersResponse", + "description": "The list of all clusters in a project.", + "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", + "WorkflowMetadata": { "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": { - "format": "float", - "description": "Required. The numerical progress of the application, from 1 to 100.", - "type": "number" + "deleteCluster": { + "description": "Output-only The delete cluster operation metadata.", + "$ref": "ClusterOperation" }, "state": { + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], "enum": [ - "STATE_UNSPECIFIED", - "NEW", - "NEW_SAVING", - "SUBMITTED", - "ACCEPTED", + "UNKNOWN", + "PENDING", "RUNNING", - "FINISHED", - "FAILED", - "KILLED" + "DONE" ], - "description": "Required. The application state.", - "type": "string", - "enumDescriptions": [ - "Status is unspecified.", - "Status is NEW.", - "Status is NEW_SAVING.", - "Status is SUBMITTED.", - "Status is ACCEPTED.", - "Status is RUNNING.", - "Status is FINISHED.", - "Status is FAILED.", - "Status is KILLED." - ] + "description": "Output-only The workflow state.", + "type": "string" }, - "name": { - "type": "string", - "description": "Required. The application name." - } - }, - "id": "YarnApplication" - }, - "DiagnoseClusterRequest": { - "description": "A request to collect cluster diagnostic information.", - "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest" - }, - "DiskConfig": { - "properties": { - "bootDiskSizeGb": { - "format": "int32", - "description": "Optional. Size in GB of the boot disk (default is 500GB).", - "type": "integer" + "createCluster": { + "description": "Output-only The create cluster operation metadata.", + "$ref": "ClusterOperation" }, - "numLocalSsds": { + "version": { "format": "int32", - "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.", + "description": "Output-only The version of template at the time of workflow instantiation.", "type": "integer" + }, + "graph": { + "description": "Output-only The workflow graph.", + "$ref": "WorkflowGraph" + }, + "template": { + "description": "Output-only The \"resource name\" of the template.", + "type": "string" } }, - "id": "DiskConfig", - "description": "Specifies the config of disk options for a group of VM instances.", + "id": "WorkflowMetadata", + "description": "A Cloud Dataproc workflow template resource.", "type": "object" }, - "ClusterOperationMetadata": { - "description": "Metadata describing the operation.", + "ClusterOperation": { "type": "object", "properties": { - "operationType": { - "description": "Output-only. The operation type.", + "error": { + "description": "Output-only Error, if operation failed.", "type": "string" }, - "description": { - "description": "Output-only. Short description of operation.", + "operationId": { + "description": "Output-only The id of the cluster operation.", + "type": "string" + } + }, + "id": "ClusterOperation" + }, + "Job": { + "properties": { + "driverControlFilesUri": { + "description": "Output-only. If present, the location of miscellaneous control files which may be used as part of job setup and handling. If not present, control files may be placed in the same location as driver_output_uri.", "type": "string" }, - "warnings": { - "description": "Output-only. Errors encountered during operation execution.", - "items": { - "type": "string" - }, - "type": "array" + "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" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "Output-only. Labels associated with the operation", + "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" }, - "status": { - "$ref": "ClusterOperationStatus", - "description": "Output-only. Current operation status." + "driverOutputResourceUri": { + "description": "Output-only. A URI pointing to the location of the stdout of the job's driver program.", + "type": "string" + }, + "sparkSqlJob": { + "$ref": "SparkSqlJob", + "description": "Job is a SparkSql job." }, "statusHistory": { - "description": "Output-only. The previous operation status.", + "description": "Output-only. The previous job status.", "items": { - "$ref": "ClusterOperationStatus" + "$ref": "JobStatus" }, "type": "array" }, - "clusterUuid": { - "description": "Output-only. Cluster UUID for the operation.", - "type": "string" + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." }, - "clusterName": { - "type": "string", - "description": "Output-only. Name of the cluster for the operation." + "yarnApplications": { + "description": "Output-only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "items": { + "$ref": "YarnApplication" + }, + "type": "array" + }, + "pysparkJob": { + "$ref": "PySparkJob", + "description": "Job is a Pyspark job." + }, + "reference": { + "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e.", + "$ref": "JobReference" + }, + "hadoopJob": { + "$ref": "HadoopJob", + "description": "Job is a Hadoop job." + }, + "placement": { + "description": "Required. Job information, including how, when, and where to run the job.", + "$ref": "JobPlacement" + }, + "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." } }, - "id": "ClusterOperationMetadata" + "id": "Job", + "description": "A Cloud Dataproc job resource.", + "type": "object" }, - "HiveJob": { - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", - "type": "object", + "SparkJob": { "properties": { - "properties": { - "additionalProperties": { + "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.", + "items": { "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" + "type": "array" }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", + "mainJarFileUri": { + "description": "The HCFS URI of the jar file that contains the main class.", "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.", + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", "items": { "type": "string" }, "type": "array" }, - "scriptVariables": { + "loggingConfig": { + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" + }, + "properties": { "additionalProperties": { "type": "string" }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", + "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" - } - }, - "id": "HiveJob" - }, - "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" - }, - "WorkflowGraph": { - "id": "WorkflowGraph", - "description": "The workflow graph.", - "type": "object", - "properties": { - "nodes": { - "description": "Output-only The workflow nodes.", + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { - "$ref": "WorkflowNode" + "type": "string" + }, + "type": "array" + }, + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" }, "type": "array" } - } + }, + "id": "SparkJob", + "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", + "type": "object" }, - "DiagnoseClusterResults": { + "JobStatus": { "properties": { - "outputUri": { - "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", + "details": { + "description": "Output-only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "type": "string" + }, + "state": { + "enumDescriptions": [ + "The job state is unknown.", + "The job is pending; it has been submitted, but is not yet running.", + "Job has been received by the service and completed initial setup; it will soon be submitted to the cluster.", + "The job is running on the cluster.", + "A CancelJob request has been received, but is pending.", + "Transient in-flight resources have been canceled, and the request to cancel the running job has been issued to the cluster.", + "The job cancellation was successful.", + "The job has completed successfully.", + "The job has completed, but encountered an error.", + "Job attempt has failed. The detail field contains failure details for this attempt.Applies to restartable jobs only." + ], + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "SETUP_DONE", + "RUNNING", + "CANCEL_PENDING", + "CANCEL_STARTED", + "CANCELLED", + "DONE", + "ERROR", + "ATTEMPT_FAILURE" + ], + "description": "Output-only. A state message specifying the overall job state.", + "type": "string" + }, + "substate": { + "enumDescriptions": [ + "", + "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.", + "type": "string" + }, + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only. The time when this state was entered.", "type": "string" } }, - "id": "DiagnoseClusterResults", - "description": "The location of diagnostic output.", + "id": "JobStatus", + "description": "Cloud Dataproc job status.", "type": "object" }, - "ClusterConfig": { - "description": "The cluster config.", + "ManagedGroupConfig": { + "description": "Specifies the resources used to actively manage an instance group.", "type": "object", "properties": { - "masterConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster." - }, - "secondaryWorkerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster." - }, - "initializationActions": { - "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's role metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", - "items": { - "$ref": "NodeInitializationAction" - }, - "type": "array" + "instanceGroupManagerName": { + "description": "Output-only. The name of the Instance Group Manager for this group.", + "type": "string" }, - "configBucket": { - "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", + "instanceTemplateName": { + "description": "Output-only. The name of the Instance Template used for the Managed Instance Group.", + "type": "string" + } + }, + "id": "ManagedGroupConfig" + }, + "ClusterOperationStatus": { + "properties": { + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only. The time this state was entered.", "type": "string" }, - "workerConfig": { - "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster.", - "$ref": "InstanceGroupConfig" + "details": { + "description": "Output-only.A message containing any operation metadata details.", + "type": "string" }, - "gceClusterConfig": { - "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster.", - "$ref": "GceClusterConfig" + "state": { + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "description": "Output-only. A message containing the operation state.", + "type": "string" }, - "softwareConfig": { - "description": "Optional. The config settings for software inside the cluster.", - "$ref": "SoftwareConfig" + "innerState": { + "description": "Output-only. A message containing the detailed operation state.", + "type": "string" } }, - "id": "ClusterConfig" + "id": "ClusterOperationStatus", + "description": "The status of the operation.", + "type": "object" }, - "PySparkJob": { - "description": "A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/0.9.0/python-programming-guide.html) applications on YARN.", + "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": { - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", - "items": { - "type": "string" - }, - "type": "array" + "state": { + "enumDescriptions": [ + "Status is unspecified.", + "Status is NEW.", + "Status is NEW_SAVING.", + "Status is SUBMITTED.", + "Status is ACCEPTED.", + "Status is RUNNING.", + "Status is FINISHED.", + "Status is FAILED.", + "Status is KILLED." + ], + "enum": [ + "STATE_UNSPECIFIED", + "NEW", + "NEW_SAVING", + "SUBMITTED", + "ACCEPTED", + "RUNNING", + "FINISHED", + "FAILED", + "KILLED" + ], + "description": "Required. The application state.", + "type": "string" }, - "jarFileUris": { - "items": { - "type": "string" - }, - "type": "array", - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks." + "name": { + "description": "Required. The application name.", + "type": "string" }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." + "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": { + "format": "float", + "description": "Required. The numerical progress of the application, from 1 to 100.", + "type": "number" + } + }, + "id": "YarnApplication" + }, + "HadoopJob": { + "properties": { "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 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 --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { "type": "string" }, "type": "array" }, "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", + "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", "items": { "type": "string" }, "type": "array" }, - "pythonFileUris": { - "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "mainClass": { + "description": "The name of the driver's main class. The jar file containing the class must be in the default CLASSPATH or specified in jar_file_uris.", + "type": "string" + }, + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", "items": { "type": "string" }, "type": "array" }, - "mainPythonFileUri": { - "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", - "type": "string" - } - }, - "id": "PySparkJob" - }, - "GceClusterConfig": { - "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", - "type": "object", - "properties": { - "serviceAccount": { - "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", - "type": "string" - }, - "subnetworkUri": { - "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", - "type": "string" - }, - "networkUri": { - "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", - "type": "string" - }, - "zoneUri": { - "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f", + "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" }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", - "type": "object" - }, - "internalIpOnly": { - "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", - "type": "boolean" - }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", + "jarFileUris": { + "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", "items": { "type": "string" }, "type": "array" }, - "tags": { - "description": "The Google Compute Engine tags to add to all instances (see Tagging instances).", - "items": { - "type": "string" - }, - "type": "array" + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." } }, - "id": "GceClusterConfig" + "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).", + "type": "object" }, - "ClusterMetrics": { - "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", + "QueryList": { "properties": { - "yarnMetrics": { - "description": "The YARN metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - }, - "hdfsMetrics": { - "type": "object", - "additionalProperties": { - "format": "int64", + "queries": { + "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", + "items": { "type": "string" }, - "description": "The HDFS metrics." + "type": "array" } }, - "id": "ClusterMetrics" + "id": "QueryList", + "description": "A list of queries to run on a cluster.", + "type": "object" }, - "AcceleratorConfig": { - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine).", + "DiagnoseClusterRequest": { + "description": "A request to collect cluster diagnostic information.", + "type": "object", + "properties": {}, + "id": "DiagnoseClusterRequest" + }, + "DiskConfig": { + "description": "Specifies the config of disk options for a group of VM instances.", "type": "object", "properties": { - "acceleratorTypeUri": { - "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", - "type": "string" - }, - "acceleratorCount": { + "numLocalSsds": { "format": "int32", - "description": "The number of the accelerator cards of this type exposed to this instance.", + "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.", + "type": "integer" + }, + "bootDiskSizeGb": { + "format": "int32", + "description": "Optional. Size in GB of the boot disk (default is 500GB).", "type": "integer" } }, - "id": "AcceleratorConfig" - }, - "LoggingConfig": { - "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": { - "type": "string", - "enum": [ - "LEVEL_UNSPECIFIED", - "ALL", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL", - "OFF" - ] - } - } - }, - "id": "LoggingConfig", - "description": "The runtime logging config of the job.", - "type": "object" + "id": "DiskConfig" }, - "WorkflowNode": { - "description": "The workflow node.", + "ClusterOperationMetadata": { + "description": "Metadata describing the operation.", "type": "object", "properties": { - "prerequisiteStepIds": { - "description": "Output-only Node's prerequisite nodes.", + "operationType": { + "description": "Output-only. The operation type.", + "type": "string" + }, + "description": { + "description": "Output-only. Short description of operation.", + "type": "string" + }, + "warnings": { + "description": "Output-only. Errors encountered during operation execution.", "items": { "type": "string" }, "type": "array" }, - "state": { - "description": "Output-only The node state.", - "type": "string", - "enumDescriptions": [ - "", - "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" - ] + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output-only. Labels associated with the operation", + "type": "object" }, - "error": { - "type": "string", - "description": "Output-only The error detail." + "status": { + "$ref": "ClusterOperationStatus", + "description": "Output-only. Current operation status." }, - "stepId": { - "description": "Output-only The name of the node.", + "statusHistory": { + "description": "Output-only. The previous operation status.", + "items": { + "$ref": "ClusterOperationStatus" + }, + "type": "array" + }, + "clusterName": { + "description": "Output-only. Name of the cluster for the operation.", "type": "string" }, - "jobId": { - "description": "Output-only The job id; populated after the node enters RUNNING state.", + "clusterUuid": { + "description": "Output-only. Cluster UUID for the operation.", "type": "string" } }, - "id": "WorkflowNode" + "id": "ClusterOperationMetadata" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", + "Empty": { + "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 {}.", + "type": "object" + }, + "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", "type": "object", "properties": { - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "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" }, - "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" - } + "queryFileUri": { + "description": "The HCFS URI of the script that contains Hive queries.", + "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" + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." }, - "response": { + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "scriptVariables": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "type": "string" }, - "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": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", "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" + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", + "type": "object" } }, - "id": "Operation" + "id": "HiveJob" }, - "JobReference": { + "DiagnoseClusterResults": { + "description": "The location of diagnostic output.", "type": "object", "properties": { - "jobId": { - "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", - "type": "string" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "outputUri": { + "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", "type": "string" } }, - "id": "JobReference", - "description": "Encapsulates the full scoping used to reference a job." + "id": "DiagnoseClusterResults" }, - "SubmitJobRequest": { - "description": "A request to submit a job.", + "WorkflowGraph": { + "description": "The workflow graph.", "type": "object", "properties": { - "job": { - "$ref": "Job", - "description": "Required. The job resource." + "nodes": { + "description": "Output-only The workflow nodes.", + "items": { + "$ref": "WorkflowNode" + }, + "type": "array" } }, - "id": "SubmitJobRequest" + "id": "WorkflowGraph" }, - "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", + "ClusterConfig": { "properties": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "masterConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster." + }, + "secondaryWorkerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster." + }, + "initializationActions": { + "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's role metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "NodeInitializationAction" }, "type": "array" }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "configBucket": { + "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", "type": "string" + }, + "workerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster." + }, + "gceClusterConfig": { + "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster.", + "$ref": "GceClusterConfig" + }, + "softwareConfig": { + "description": "Optional. The config settings for software inside the cluster.", + "$ref": "SoftwareConfig" } }, - "id": "Status" - }, - "JobScheduling": { - "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release.", - "type": "object", - "properties": { - "maxFailuresPerHour": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "JobScheduling" + "id": "ClusterConfig", + "description": "The cluster config.", + "type": "object" }, - "InstanceGroupConfig": { - "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group.", + "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": { - "accelerators": { - "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" + }, + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { - "$ref": "AcceleratorConfig" + "type": "string" }, "type": "array" }, - "numInstances": { - "format": "int32", - "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", - "type": "integer" - }, - "diskConfig": { - "description": "Optional. Disk option config settings.", - "$ref": "DiskConfig" - }, - "managedGroupConfig": { - "description": "Output-only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", - "$ref": "ManagedGroupConfig" + "fileUris": { + "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" }, - "isPreemptible": { - "description": "Optional. Specifies that this instance group contains preemptible instances.", - "type": "boolean" + "pythonFileUris": { + "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "items": { + "type": "string" + }, + "type": "array" }, - "imageUri": { - "description": "Output-only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", + "mainPythonFileUri": { + "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", "type": "string" }, - "machineTypeUri": { - "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", - "type": "string" + "archiveUris": { + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" }, - "instanceNames": { + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", "items": { "type": "string" }, - "type": "array", - "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name)." + "type": "array" + }, + "loggingConfig": { + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" } }, - "id": "InstanceGroupConfig" + "id": "PySparkJob" }, - "ListJobsResponse": { - "description": "A list of jobs in a project.", + "GceClusterConfig": { + "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", "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" + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", + "type": "object" }, - "jobs": { - "description": "Output-only. Jobs list.", + "internalIpOnly": { + "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", + "type": "boolean" + }, + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", "items": { - "$ref": "Job" + "type": "string" }, "type": "array" + }, + "tags": { + "description": "The Google Compute Engine tags to add to all instances (see Tagging instances).", + "items": { + "type": "string" + }, + "type": "array" + }, + "serviceAccount": { + "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", + "type": "string" + }, + "subnetworkUri": { + "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", + "type": "string" + }, + "networkUri": { + "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", + "type": "string" + }, + "zoneUri": { + "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f", + "type": "string" } }, - "id": "ListJobsResponse" + "id": "GceClusterConfig" }, - "NodeInitializationAction": { - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", - "type": "object", + "AcceleratorConfig": { "properties": { - "executionTimeout": { - "format": "google-duration", - "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.", + "acceleratorTypeUri": { + "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", "type": "string" }, - "executableFile": { - "description": "Required. Google Cloud Storage URI of executable file.", - "type": "string" + "acceleratorCount": { + "format": "int32", + "description": "The number of the accelerator cards of this type exposed to this instance.", + "type": "integer" } }, - "id": "NodeInitializationAction" - }, - "CancelJobRequest": { - "description": "A request to cancel a job.", - "type": "object", - "properties": {}, - "id": "CancelJobRequest" + "id": "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" }, - "SparkSqlJob": { - "id": "SparkSqlJob", - "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", + "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": { + "yarnMetrics": { "additionalProperties": { + "format": "int64", "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": "The YARN metrics.", "type": "object" }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains SQL queries." - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", - "items": { + "hdfsMetrics": { + "additionalProperties": { + "format": "int64", "type": "string" }, - "type": "array" - }, - "scriptVariables": { + "description": "The HDFS metrics.", + "type": "object" + } + }, + "id": "ClusterMetrics" + }, + "LoggingConfig": { + "properties": { + "driverLogLevels": { "additionalProperties": { + "enum": [ + "LEVEL_UNSPECIFIED", + "ALL", + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "FATAL", + "OFF" + ], "type": "string" }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", + "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", + "description": "The runtime logging config of the job.", + "type": "object" }, - "Cluster": { + "WorkflowNode": { + "description": "The workflow node.", "type": "object", "properties": { - "config": { - "$ref": "ClusterConfig", - "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." - }, - "statusHistory": { - "description": "Output-only. The previous cluster status.", + "prerequisiteStepIds": { + "description": "Output-only Node's prerequisite nodes.", "items": { - "$ref": "ClusterStatus" + "type": "string" }, "type": "array" }, - "clusterUuid": { - "description": "Output-only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", - "type": "string" - }, - "clusterName": { - "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", - "type": "string" - }, - "projectId": { + "state": { + "enum": [ + "NODE_STATUS_UNSPECIFIED", + "BLOCKED", + "RUNNABLE", + "RUNNING", + "COMPLETED", + "FAILED" + ], + "description": "Output-only The node state.", "type": "string", - "description": "Required. The Google Cloud Platform project ID that the cluster belongs to." + "enumDescriptions": [ + "", + "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." + ] }, - "labels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. The labels to associate with this cluster. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster." + "error": { + "description": "Output-only The error detail.", + "type": "string" }, - "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." + "stepId": { + "description": "Output-only The name of the node.", + "type": "string" }, - "status": { - "description": "Output-only. Cluster status.", - "$ref": "ClusterStatus" + "jobId": { + "description": "Output-only The job id; populated after the node enters RUNNING state.", + "type": "string" } }, - "id": "Cluster", - "description": "Describes the identifying information, config, and status of a cluster of Google Compute Engine instances." + "id": "WorkflowNode" }, - "ListOperationsResponse": { - "type": "object", + "Operation": { "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", "type": "string" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "items": { - "$ref": "Operation" + "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" }, - "type": "array" + "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": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations." + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a network API call.", + "type": "object" }, - "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the cluster.", + "JobReference": { + "description": "Encapsulates the full scoping used to reference a job.", "type": "object", "properties": { - "properties": { - "type": "object", - "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.xml" + "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" }, - "imageVersion": { - "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string" } }, - "id": "SoftwareConfig" + "id": "JobReference" }, - "JobPlacement": { + "SubmitJobRequest": { + "description": "A request to submit a job.", "type": "object", "properties": { - "clusterUuid": { - "description": "Output-only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", - "type": "string" - }, - "clusterName": { - "description": "Required. The name of the cluster where the job will be submitted.", - "type": "string" + "job": { + "$ref": "Job", + "description": "Required. The job resource." } }, - "id": "JobPlacement", - "description": "Cloud Dataproc job config." + "id": "SubmitJobRequest" } }, "protocol": "rest", @@ -1998,10 +2001,7 @@ } } }, - "kind": "discovery#restDescription", "servicePath": "", "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "rootUrl": "https://dataproc.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com" + "kind": "discovery#restDescription" } diff --git a/DiscoveryJson/dataproc_v1beta1.json b/DiscoveryJson/dataproc_v1beta1.json index cd2193c36a..3fe76a360a 100644 --- a/DiscoveryJson/dataproc_v1beta1.json +++ b/DiscoveryJson/dataproc_v1beta1.json @@ -1,66 +1,134 @@ { - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { + "operations": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "pattern": "^operations/.+$", + "location": "path", + "description": "The name of the operation resource to be deleted.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/operations/{operationsId}", + "path": "v1beta1/{+name}", + "id": "dataproc.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 below allows API services to override the binding to use different resource name schemes, such as users/*/operations.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^operations$" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + }, + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + } + }, + "flatPath": "v1beta1/operations", + "id": "dataproc.operations.list", + "path": "v1beta1/{+name}" + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^operations/.+$", + "location": "path" + } + }, + "flatPath": "v1beta1/operations/{operationsId}", + "id": "dataproc.operations.get", + "path": "v1beta1/{+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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET" + }, + "cancel": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true, + "pattern": "^operations/.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/operations/{operationsId}:cancel", + "id": "dataproc.operations.cancel", + "path": "v1beta1/{+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.get or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation.", + "request": { + "$ref": "CancelOperationRequest" + } + } + } + }, "projects": { "resources": { "jobs": { "methods": { - "list": { - "description": "Lists jobs in a project.", - "httpMethod": "GET", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "format": "int32", - "description": "Optional The number of results to return in each response.", - "type": "integer", - "location": "query" - }, - "clusterName": { - "description": "Optional If set, the returned jobs list includes only jobs that were submitted to the named cluster.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "path", - "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", - "type": "string", - "required": true - }, - "filter": { - "location": "query", - "description": "Optional A filter constraining which jobs to list. Valid filters contain job state and label terms such as: labels.key1 = val1 AND (labels.k2 = val2 OR labels.k3 = val3)", - "type": "string" - }, - "jobStateMatcher": { - "enum": [ - "ALL", - "ACTIVE", - "NON_ACTIVE" - ], - "description": "Optional Specifies enumerated categories of jobs to list.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "Optional The page token, returned by a previous call, to request the next page of results.", - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectId}/jobs", - "path": "v1beta1/projects/{projectId}/jobs", - "id": "dataproc.projects.jobs.list" - }, "cancel": { "response": { "$ref": "Job" @@ -72,10 +140,10 @@ "httpMethod": "POST", "parameters": { "jobId": { + "location": "path", "description": "Required The job ID.", "type": "string", - "required": true, - "location": "path" + "required": true }, "projectId": { "location": "path", @@ -96,7 +164,7 @@ } }, "get": { - "description": "Gets the resource representation for a job in a project.", + "httpMethod": "GET", "response": { "$ref": "Job" }, @@ -104,33 +172,29 @@ "projectId", "jobId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "jobId": { - "location": "path", "description": "Required The job ID.", "type": "string", - "required": true + "required": true, + "location": "path" }, "projectId": { - "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "Required The ID of the Google Cloud Platform project that the job belongs to." } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta1/projects/{projectId}/jobs/{jobId}", + "path": "v1beta1/projects/{projectId}/jobs/{jobId}", "id": "dataproc.projects.jobs.get", - "path": "v1beta1/projects/{projectId}/jobs/{jobId}" + "description": "Gets the resource representation for a job in a project." }, "patch": { - "description": "Updates a job in a project.", - "request": { - "$ref": "Job" - }, "httpMethod": "PATCH", "parameterOrder": [ "projectId", @@ -147,16 +211,16 @@ "location": "path" }, "projectId": { - "location": "path", "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", - "required": true + "required": true, + "location": "path" }, "updateMask": { + "location": "query", "format": "google-fieldmask", "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.", - "type": "string", - "location": "query" + "type": "string" } }, "scopes": [ @@ -164,13 +228,20 @@ ], "flatPath": "v1beta1/projects/{projectId}/jobs/{jobId}", "path": "v1beta1/projects/{projectId}/jobs/{jobId}", - "id": "dataproc.projects.jobs.patch" + "id": "dataproc.projects.jobs.patch", + "description": "Updates a job in a project.", + "request": { + "$ref": "Job" + } }, "submit": { + "flatPath": "v1beta1/projects/{projectId}/jobs:submit", + "path": "v1beta1/projects/{projectId}/jobs:submit", + "id": "dataproc.projects.jobs.submit", + "description": "Submits a job to a cluster.", "request": { "$ref": "SubmitJobRequest" }, - "description": "Submits a job to a cluster.", "httpMethod": "POST", "parameterOrder": [ "projectId" @@ -178,147 +249,139 @@ "response": { "$ref": "Job" }, - "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.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "flatPath": "v1beta1/projects/{projectId}/jobs:submit", - "path": "v1beta1/projects/{projectId}/jobs:submit", - "id": "dataproc.projects.jobs.submit" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "jobId": { - "type": "string", - "required": true, "location": "path", - "description": "Required The job ID." + "description": "Required The job ID.", + "type": "string", + "required": true }, "projectId": { - "location": "path", "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "flatPath": "v1beta1/projects/{projectId}/jobs/{jobId}", "id": "dataproc.projects.jobs.delete", "path": "v1beta1/projects/{projectId}/jobs/{jobId}", - "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", + "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION." + }, + "list": { "response": { - "$ref": "Empty" + "$ref": "ListJobsResponse" }, "parameterOrder": [ - "projectId", - "jobId" + "projectId" ], - "httpMethod": "DELETE" - } - } - }, - "clusters": { - "methods": { - "diagnose": { - "id": "dataproc.projects.clusters.diagnose", - "path": "v1beta1/projects/{projectId}/clusters/{clusterName}:diagnose", - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", - "request": { - "$ref": "DiagnoseClusterRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "clusterName" - ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { "clusterName": { - "description": "Required The cluster name.", + "description": "Optional If set, the returned jobs list includes only jobs that were submitted to the named cluster.", "type": "string", - "required": true, - "location": "path" + "location": "query" }, "projectId": { - "description": "Required The ID of the Google Cloud Platform project that the cluster belongs to.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}:diagnose" - }, - "delete": { - "description": "Deletes a cluster in a project.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "clusterName" - ], - "httpMethod": "DELETE", - "parameters": { - "clusterName": { "location": "path", - "description": "Required The cluster name.", + "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", "required": true }, - "projectId": { - "description": "Required The ID of the Google Cloud Platform project that the cluster belongs to.", + "filter": { "type": "string", - "required": true, - "location": "path" + "location": "query", + "description": "Optional A filter constraining which jobs to list. Valid filters contain job state and label terms such as: labels.key1 = val1 AND (labels.k2 = val2 OR labels.k3 = val3)" + }, + "jobStateMatcher": { + "description": "Optional Specifies enumerated categories of jobs to list.", + "type": "string", + "location": "query", + "enum": [ + "ALL", + "ACTIVE", + "NON_ACTIVE" + ] + }, + "pageToken": { + "location": "query", + "description": "Optional The page token, returned by a previous call, to request the next page of results.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Optional The number of results to return in each response." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}", - "id": "dataproc.projects.clusters.delete", - "path": "v1beta1/projects/{projectId}/clusters/{clusterName}" - }, + "flatPath": "v1beta1/projects/{projectId}/jobs", + "id": "dataproc.projects.jobs.list", + "path": "v1beta1/projects/{projectId}/jobs", + "description": "Lists jobs in a project." + } + } + }, + "clusters": { + "methods": { "list": { + "id": "dataproc.projects.clusters.list", + "path": "v1beta1/projects/{projectId}/clusters", "description": "Lists all clusters in a project.", "response": { "$ref": "ListClustersResponse" }, + "httpMethod": "GET", "parameterOrder": [ "projectId" ], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "pageToken": { + "location": "query", "description": "The standard List page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { + "location": "query", "format": "int32", "description": "The standard List page size.", - "type": "integer", - "location": "query" + "type": "integer" }, "projectId": { - "type": "string", - "required": true, "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 cluster belongs to.", + "type": "string", + "required": true }, "filter": { "description": "Optional A filter constraining which clusters to list. Valid filters contain label terms such as: labels.key1 = val1 AND (-labels.k2 = val2 OR labels.k3 = val3)", @@ -326,14 +389,10 @@ "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/clusters", - "id": "dataproc.projects.clusters.list", - "path": "v1beta1/projects/{projectId}/clusters" + "flatPath": "v1beta1/projects/{projectId}/clusters" }, "create": { + "flatPath": "v1beta1/projects/{projectId}/clusters", "id": "dataproc.projects.clusters.create", "path": "v1beta1/projects/{projectId}/clusters", "request": { @@ -357,28 +416,61 @@ "type": "string", "required": true } - }, - "flatPath": "v1beta1/projects/{projectId}/clusters" + } }, "get": { - "id": "dataproc.projects.clusters.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "clusterName": { + "location": "path", + "description": "Required The cluster name.", + "type": "string", + "required": true + }, + "projectId": { + "description": "Required The ID of the Google Cloud Platform project that the cluster belongs to.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}", "path": "v1beta1/projects/{projectId}/clusters/{clusterName}", + "id": "dataproc.projects.clusters.get", "description": "Gets the resource representation for a cluster in a project.", + "httpMethod": "GET", + "parameterOrder": [ + "projectId", + "clusterName" + ], "response": { "$ref": "Cluster" - }, + } + }, + "patch": { + "httpMethod": "PATCH", "parameterOrder": [ "projectId", "clusterName" ], - "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, "parameters": { "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 the cluster belongs to.", "type": "string", "required": true }, + "updateMask": { + "format": "google-fieldmask", + "description": "Required Specifies the path, relative to \u003ccode\u003eCluster\u003c/code\u003e, of the field to update. For example, to change the number of workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003econfiguration.worker_configuration.num_instances\u003c/code\u003e, and the PATCH request body would specify the new value, as follows:\n{\n \"configuration\":{\n \"workerConfiguration\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003econfig.worker_config.num_instances\u003c/code\u003e and \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e are the only fields that can be updated.", + "type": "string", + "location": "query" + }, "clusterName": { "location": "path", "description": "Required The cluster name.", @@ -389,15 +481,22 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}" - }, - "patch": { - "id": "dataproc.projects.clusters.patch", + "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}", "path": "v1beta1/projects/{projectId}/clusters/{clusterName}", + "id": "dataproc.projects.clusters.patch", "description": "Updates a cluster in a project.", "request": { "$ref": "Cluster" + } + }, + "diagnose": { + "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}:diagnose", + "id": "dataproc.projects.clusters.diagnose", + "path": "v1beta1/projects/{projectId}/clusters/{clusterName}:diagnose", + "request": { + "$ref": "DiagnoseClusterRequest" }, + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", "response": { "$ref": "Operation" }, @@ -405,7 +504,10 @@ "projectId", "clusterName" ], - "httpMethod": "PATCH", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "clusterName": { "location": "path", @@ -414,161 +516,70 @@ "required": true }, "projectId": { - "description": "Required The ID of the Google Cloud Platform project the cluster belongs to.", "type": "string", "required": true, - "location": "path" - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "description": "Required Specifies the path, relative to \u003ccode\u003eCluster\u003c/code\u003e, of the field to update. For example, to change the number of workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be specified as \u003ccode\u003econfiguration.worker_configuration.num_instances\u003c/code\u003e, and the PATCH request body would specify the new value, as follows:\n{\n \"configuration\":{\n \"workerConfiguration\":{\n \"numInstances\":\"5\"\n }\n }\n}\nSimilarly, to change the number of preemptible workers in a cluster to 5, the \u003ccode\u003eupdate_mask\u003c/code\u003e parameter would be \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e, and the PATCH request body would be set as follows:\n{\n \"config\":{\n \"secondaryWorkerConfig\":{\n \"numInstances\":\"5\"\n }\n }\n}\n\u003cstrong\u003eNote:\u003c/strong\u003e Currently, \u003ccode\u003econfig.worker_config.num_instances\u003c/code\u003e and \u003ccode\u003econfig.secondary_worker_config.num_instances\u003c/code\u003e are the only fields that can be updated.", - "type": "string" + "location": "path", + "description": "Required The ID of the Google Cloud Platform project that the cluster belongs to." } + } + }, + "delete": { + "path": "v1beta1/projects/{projectId}/clusters/{clusterName}", + "id": "dataproc.projects.clusters.delete", + "description": "Deletes a cluster in a project.", + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" }, + "parameterOrder": [ + "projectId", + "clusterName" + ], "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], + "parameters": { + "clusterName": { + "type": "string", + "required": true, + "location": "path", + "description": "Required The cluster name." + }, + "projectId": { + "description": "Required The ID of the Google Cloud Platform project that the cluster belongs to.", + "type": "string", + "required": true, + "location": "path" + } + }, "flatPath": "v1beta1/projects/{projectId}/clusters/{clusterName}" } } } } + } + }, + "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": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "location": "query" }, - "operations": { - "methods": { - "cancel": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "type": "string", - "required": true, - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled." - } - }, - "flatPath": "v1beta1/operations/{operationsId}:cancel", - "path": "v1beta1/{+name}:cancel", - "id": "dataproc.operations.cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use operations.get or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation." - }, - "delete": { - "flatPath": "v1beta1/operations/{operationsId}", - "id": "dataproc.operations.delete", - "path": "v1beta1/{+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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be deleted.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding below allows API services to override the binding to use different resource name schemes, such as users/*/operations.", - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", - "type": "string", - "required": true, - "pattern": "^operations$", - "location": "path" - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/operations", - "path": "v1beta1/{+name}", - "id": "dataproc.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.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true - } - }, - "flatPath": "v1beta1/operations/{operationsId}", - "path": "v1beta1/{+name}", - "id": "dataproc.operations.get" - } - } - } - }, - "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.", - "type": "string" + "description": "OAuth 2.0 token for the current user." }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", @@ -576,20 +587,20 @@ "location": "query" }, "prettyPrint": { - "default": "true", - "type": "boolean", - "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" + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, "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" }, "$.xgafv": { "enumDescriptions": [ @@ -605,11 +616,14 @@ "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { + "location": "query", + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -620,56 +634,117 @@ "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", - "location": "query" + "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.", - "default": "true", - "type": "boolean" } }, "schemas": { - "SoftwareConfiguration": { + "Job": { + "description": "A Cloud Dataproc job resource.", + "type": "object", "properties": { - "properties": { - "description": "Optional The properties to set on daemon configuration files.Property keys are specified in \"prefix:property\" format, such as \"core:fs.defaultFS\". The following are supported prefixes and their mappings: core - core-site.xml hdfs - hdfs-site.xml mapred - mapred-site.xml yarn - yarn-site.xml hive - hive-site.xml pig - pig.properties spark - spark-defaults.conf", + "statusHistory": { + "description": "Output-only The previous job status.", + "items": { + "$ref": "JobStatus" + }, + "type": "array" + }, + "sparkSqlJob": { + "description": "Job is a SparkSql job.", + "$ref": "SparkSqlJob" + }, + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." + }, + "yarnApplications": { + "description": "Output-only The collection of YARN applications spun up by this job.", + "items": { + "$ref": "YarnApplication" + }, + "type": "array" + }, + "pysparkJob": { + "description": "Job is a Pyspark job.", + "$ref": "PySparkJob" + }, + "reference": { + "description": "Optional The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e.", + "$ref": "JobReference" + }, + "interactive": { + "description": "Optional If set to true, the driver's stdin will be kept open and driver_input_uri will be set to provide a path at which additional input can be sent to the driver.", + "type": "boolean" + }, + "driverInputResourceUri": { + "description": "Output-only A URI pointing to the location of the stdin of the job's driver program, only set if the job is interactive.", + "type": "string" + }, + "hadoopJob": { + "$ref": "HadoopJob", + "description": "Job is a Hadoop job." + }, + "placement": { + "description": "Required Job information, including how, when, and where to run the job.", + "$ref": "JobPlacement" + }, + "status": { + "$ref": "JobStatus", + "description": "Output-only The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields." + }, + "driverControlFilesUri": { + "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" + }, + "submittedBy": { + "description": "Output-only The email address of the user submitting the job. For jobs submitted on the cluster, the address is \u003ccode\u003eusername@hostname\u003c/code\u003e.", + "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": { "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Optional The labels to associate with this job.Label keys must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given job." }, - "imageVersion": { - "description": "Optional The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", + "driverOutputResourceUri": { + "description": "Output-only A URI pointing to the location of the stdout of the job's driver program.", "type": "string" } }, - "id": "SoftwareConfiguration", - "description": "Specifies the selection and configuration of software inside the cluster.", - "type": "object" + "id": "Job" }, - "PySparkJob": { + "SparkJob": { + "type": "object", "properties": { + "mainJarFileUri": { + "description": "The Hadoop Compatible Filesystem (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 Python driver and tasks.", + "description": "Optional HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", "items": { "type": "string" }, @@ -680,11 +755,11 @@ "description": "Optional The runtime log configuration 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 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.", @@ -694,619 +769,331 @@ "type": "array" }, "fileUris": { - "description": "Optional HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", - "items": { - "type": "string" - }, - "type": "array" - }, - "pythonFileUris": { - "description": "Optional HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "description": "Optional HCFS URIs of files to be copied to the working directory of Spark drivers and distributed tasks. Useful for naively parallel tasks.", "items": { "type": "string" }, "type": "array" }, - "mainPythonFileUri": { - "description": "Required The Hadoop Compatible Filesystem (HCFS) URI of the main Python file to use as the driver. Must be a .py file.", + "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 .jar, .tar, .tar.gz, .tgz, and .zip.", + "description": "Optional HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", "items": { "type": "string" }, "type": "array" } }, - "id": "PySparkJob", - "description": "A Cloud Dataproc job for running PySpark applications on YARN.", - "type": "object" + "id": "SparkJob", + "description": "A Cloud Dataproc job for running Spark applications on YARN." }, - "ClusterMetrics": { + "JobStatus": { + "description": "Cloud Dataproc job status.", "type": "object", "properties": { - "yarnMetrics": { - "description": "The YARN metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } + "substate": { + "description": "Output-only Additional state information, which includes status reported by the agent.", + "type": "string", + "enumDescriptions": [ + "", + "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" + ] }, - "hdfsMetrics": { - "description": "The HDFS metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - } - }, - "id": "ClusterMetrics", - "description": "Contains cluster daemon metrics, such as HDFS and YARN stats." - }, - "ClusterConfiguration": { - "description": "The cluster configuration.", - "type": "object", - "properties": { - "configurationBucket": { - "description": "Optional A Google Cloud Storage staging bucket used for sharing generated SSH keys and configuration. 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" - }, - "masterConfiguration": { - "description": "Optional The Google Compute Engine configuration settings for the master instance in a cluster.", - "$ref": "InstanceGroupConfiguration" - }, - "secondaryWorkerConfiguration": { - "$ref": "InstanceGroupConfiguration", - "description": "Optional The Google Compute Engine configuration settings for additional worker instances in a cluster." - }, - "workerConfiguration": { - "$ref": "InstanceGroupConfiguration", - "description": "Optional The Google Compute Engine configuration settings for worker instances in a cluster." - }, - "initializationActions": { - "description": "Optional Commands to execute on each node after configuration 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:\nROLE=$(/usr/share/google/get_metadata_value attributes/role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", - "items": { - "$ref": "NodeInitializationAction" - }, - "type": "array" - }, - "softwareConfiguration": { - "$ref": "SoftwareConfiguration", - "description": "Optional The configuration settings for software inside the cluster." - }, - "gceClusterConfiguration": { - "$ref": "GceClusterConfiguration", - "description": "Required The shared Google Compute Engine configuration settings for all instances in a cluster." - } - }, - "id": "ClusterConfiguration" - }, - "LoggingConfiguration": { - "id": "LoggingConfiguration", - "description": "The runtime logging configuration of the job.", - "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" - } - } - }, - "InstanceGroupConfiguration": { - "description": "The configuration settings for Google Compute Engine resources in an instance group, such as a master or worker group.", - "type": "object", - "properties": { - "accelerators": { - "description": "Optional The Google Compute Engine accelerator configuration for these instances.", - "items": { - "$ref": "AcceleratorConfiguration" - }, - "type": "array" - }, - "numInstances": { - "format": "int32", - "description": "The number of VM instances in the instance group. For master instance groups, must be set to 1.", - "type": "integer" - }, - "diskConfiguration": { - "$ref": "DiskConfiguration", - "description": "Disk option configuration settings." - }, - "isPreemptible": { - "description": "Specifies that this instance group contains Preemptible Instances.", - "type": "boolean" - }, - "imageUri": { - "type": "string", - "description": "Output-only The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfiguration.image_version." - }, - "machineTypeUri": { - "description": "The Google Compute Engine machine type used for cluster instances. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2.", - "type": "string" - }, - "instanceNames": { - "description": "The list of instance names. Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Dataproc derive the name).", - "items": { - "type": "string" - }, - "type": "array" - }, - "managedGroupConfiguration": { - "$ref": "ManagedGroupConfiguration", - "description": "Output-only The configuration for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups." - } - }, - "id": "InstanceGroupConfiguration" - }, - "GceClusterConfiguration": { - "description": "Common configuration settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", - "type": "object", - "properties": { - "networkUri": { - "description": "The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see https://cloud.google.com/compute/docs/subnetworks for more information). Example: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default.", - "type": "string" - }, - "zoneUri": { - "description": "Required The zone where the Google Compute Engine cluster will be located. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone].", - "type": "string" - }, - "internalIpOnly": { - "description": "If true, all instances in the cluser 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 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 Google Compute Engine metadata entries to add to all instances.", - "type": "object" - }, - "serviceAccountScopes": { - "description": "The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included: - https://www.googleapis.com/auth/cloud.useraccounts.readonly - https://www.googleapis.com/auth/devstorage.read_write - https://www.googleapis.com/auth/logging.write If no scopes are specfied, the following defaults are also provided: - https://www.googleapis.com/auth/bigquery - https://www.googleapis.com/auth/bigtable.admin.table - https://www.googleapis.com/auth/bigtable.data - https://www.googleapis.com/auth/devstorage.full_control", - "items": { - "type": "string" - }, - "type": "array" - }, - "tags": { - "description": "The Google Compute Engine tags to add to all instances.", - "items": { - "type": "string" - }, - "type": "array" - }, - "serviceAccount": { - "description": "Optional The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", - "type": "string" - }, - "subnetworkUri": { - "description": "The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0.", - "type": "string" - } - }, - "id": "GceClusterConfiguration" - }, - "CancelOperationRequest": { - "properties": {}, - "id": "CancelOperationRequest", - "description": "The request message for Operations.CancelOperation.", - "type": "object" - }, - "WorkflowNode": { - "description": "The workflow node.", - "type": "object", - "properties": { - "error": { - "description": "Output-only The error detail.", - "type": "string" - }, - "stepId": { - "description": "Output-only The name of the node.", + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only The time when this state was entered.", "type": "string" }, - "jobId": { - "description": "Output-only The job id; populated after the node enters RUNNING state.", + "details": { + "description": "Optional Job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", "type": "string" }, - "prerequisiteStepIds": { - "items": { - "type": "string" - }, - "type": "array", - "description": "Output-only Node's prerequisite nodes." - }, "state": { - "description": "Output-only The node state.", "type": "string", "enumDescriptions": [ - "", - "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." + "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 shortly 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 cancelation 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": [ - "NODE_STATUS_UNSPECIFIED", - "BLOCKED", - "RUNNABLE", - "RUNNING", - "COMPLETED", - "FAILED" - ] - } - }, - "id": "WorkflowNode" - }, - "DiagnoseClusterOutputLocation": { - "type": "object", - "properties": { - "outputUri": { - "description": "Output-only The Google Cloud Storage URI of the diagnostic output. This is a plain text file with a summary of collected diagnostics.", - "type": "string" - } - }, - "id": "DiagnoseClusterOutputLocation", - "description": "The location of diagnostic output." - }, - "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 method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", - "type": "object" - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", - "type": "string" - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", - "type": "object" - }, - "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" - }, - "OperationStatus": { - "id": "OperationStatus", - "description": "The status of the operation.", - "type": "object", - "properties": { - "details": { - "description": "A message containing any operation metadata details.", - "type": "string" - }, - "state": { - "enum": [ - "UNKNOWN", + "STATE_UNSPECIFIED", "PENDING", + "SETUP_DONE", "RUNNING", - "DONE" - ], - "description": "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." - ] - }, - "innerState": { - "description": "A message containing the detailed operation state.", - "type": "string" - }, - "stateStartTime": { - "type": "string", - "format": "google-datetime", - "description": "The time this state was entered." - } - } - }, - "JobReference": { - "properties": { - "jobId": { - "description": "Required The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", - "type": "string" - }, - "projectId": { - "description": "Required The ID of the Google Cloud Platform project that the job belongs to.", - "type": "string" - } - }, - "id": "JobReference", - "description": "Encapsulates the full scoping used to reference a job.", - "type": "object" - }, - "SubmitJobRequest": { - "description": "A request to submit a job.", - "type": "object", - "properties": { - "job": { - "$ref": "Job", - "description": "Required The job resource." + "CANCEL_PENDING", + "CANCEL_STARTED", + "CANCELLED", + "DONE", + "ERROR", + "ATTEMPT_FAILURE" + ], + "description": "Required A state message specifying the overall job state." } }, - "id": "SubmitJobRequest" + "id": "JobStatus" }, - "Status": { + "DiskConfiguration": { "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.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" + "numLocalSsds": { + "format": "int32", + "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 data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic configuration and installed binaries.", + "type": "integer" }, - "code": { - "type": "integer", + "bootDiskSizeGb": { "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code." + "description": "Optional Size in GB of the boot disk (default is 500GB).", + "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.", + "id": "DiskConfiguration", + "description": "Specifies the configuration of disk options for a group of VM instances.", "type": "object" }, - "JobScheduling": { - "id": "JobScheduling", - "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release.", - "type": "object", - "properties": { - "maxFailuresPerHour": { - "format": "int32", - "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.", - "type": "integer" - } - } - }, - "NodeInitializationAction": { - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "ClusterOperationStatus": { + "description": "The status of the operation.", "type": "object", "properties": { - "executableFile": { - "description": "Required Google Cloud Storage URI of executable file.", + "details": { + "description": "Output-only.A message containing any operation metadata details.", "type": "string" }, - "executionTimeout": { + "state": { "type": "string", - "format": "google-duration", - "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." + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "description": "Output-only. A message containing the operation state." + }, + "innerState": { + "description": "Output-only. A message containing the detailed operation state.", + "type": "string" + }, + "stateStartTime": { + "type": "string", + "format": "google-datetime", + "description": "Output-only. The time this state was entered." } }, - "id": "NodeInitializationAction" + "id": "ClusterOperationStatus" }, - "ListJobsResponse": { - "description": "A list of jobs in a project.", + "HadoopJob": { + "description": "A Cloud Dataproc job for running Hadoop MapReduce jobs on YARN.", "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" + "args": { + "items": { + "type": "string" + }, + "type": "array", + "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." }, - "jobs": { - "description": "Output-only Jobs list.", + "fileUris": { + "description": "Optional HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", "items": { - "$ref": "Job" + "type": "string" }, "type": "array" - } - }, - "id": "ListJobsResponse" - }, - "CancelJobRequest": { - "id": "CancelJobRequest", - "description": "A request to cancel a job.", - "type": "object", - "properties": {} - }, - "SparkSqlJob": { - "description": "A Cloud Dataproc job for running Spark 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.", + "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" }, - "scriptVariables": { - "description": "Optional Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", - "type": "object", - "additionalProperties": { + "archiveUris": { + "description": "Optional HCFS URIs of archives to be extracted in the working directory of Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or .zip.", + "items": { "type": "string" - } + }, + "type": "array" + }, + "mainJarFileUri": { + "description": "The Hadoop Compatible Filesystem (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 HCFS URIs of jar files to be added to the Spark CLASSPATH.", + "description": "Optional Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", "items": { "type": "string" }, "type": "array" }, "loggingConfiguration": { - "description": "Optional The runtime log configuration for job execution.", - "$ref": "LoggingConfiguration" + "$ref": "LoggingConfiguration", + "description": "Optional The runtime log configuration for job execution." }, "properties": { "additionalProperties": { "type": "string" }, - "description": "Optional A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", + "description": "Optional A mapping of property names to values, used to configure Hadoop. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes in user code.", "type": "object" } }, - "id": "SparkSqlJob" + "id": "HadoopJob" }, - "Cluster": { + "YarnApplication": { "type": "object", "properties": { - "configuration": { - "$ref": "ClusterConfiguration", - "description": "Required The cluster configuration. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional The labels to associate with this cluster.Label keys must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given cluster.", - "type": "object" - }, - "metrics": { - "description": "Contains cluster daemon metrics such as HDFS and YARN stats.", - "$ref": "ClusterMetrics" - }, - "status": { - "$ref": "ClusterStatus", - "description": "Output-only Cluster status." - }, - "statusHistory": { - "items": { - "$ref": "ClusterStatus" - }, - "type": "array", - "description": "Output-only Previous cluster statuses." - }, - "clusterUuid": { - "description": "Output-only A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", + "state": { + "enumDescriptions": [ + "Status is unspecified.", + "Status is NEW.", + "Status is NEW_SAVING.", + "Status is SUBMITTED.", + "Status is ACCEPTED.", + "Status is RUNNING.", + "Status is FINISHED.", + "Status is FAILED.", + "Status is KILLED." + ], + "enum": [ + "STATE_UNSPECIFIED", + "NEW", + "NEW_SAVING", + "SUBMITTED", + "ACCEPTED", + "RUNNING", + "FINISHED", + "FAILED", + "KILLED" + ], + "description": "Required The application state.", "type": "string" }, - "clusterName": { - "description": "Required The cluster name. Cluster names within a project must be unique. Names from deleted clusters can be reused.", + "name": { + "description": "Required The application name.", "type": "string" }, - "projectId": { - "description": "Required The Google Cloud Platform project ID that the cluster belongs to.", + "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": { + "format": "float", + "description": "Required The numerical progress of the application, from 1 to 100.", + "type": "number" } }, - "id": "Cluster", - "description": "Describes the identifying information, configuration, and status of a cluster of Google Compute Engine instances." + "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." }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "QueryList": { + "description": "A list of queries to run on a cluster.", "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.", + "queries": { "items": { - "$ref": "Operation" + "type": "string" }, - "type": "array" + "type": "array", + "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" } }, - "id": "ListOperationsResponse" + "id": "QueryList" }, - "OperationMetadata": { + "DiagnoseClusterRequest": { + "properties": {}, + "id": "DiagnoseClusterRequest", + "description": "A request to collect cluster diagnostic information.", + "type": "object" + }, + "ClusterOperationMetadata": { + "description": "Metadata describing the operation.", + "type": "object", "properties": { + "clusterName": { + "description": "Output-only. Name of the cluster for the operation.", + "type": "string" + }, + "clusterUuid": { + "description": "Output-only. Cluster UUID for the operation.", + "type": "string" + }, + "operationType": { + "description": "Output-only. The operation type.", + "type": "string" + }, + "description": { + "description": "Output-only. Short description of operation.", + "type": "string" + }, "warnings": { - "description": "Output-only Errors encountered during operation execution.", + "description": "Output-only. Errors encountered during operation execution.", "items": { "type": "string" }, "type": "array" }, - "status": { - "$ref": "OperationStatus", - "description": "Output-only Current operation status." - }, - "statusHistory": { - "description": "Output-only Previous operation status.", - "items": { - "$ref": "OperationStatus" + "labels": { + "additionalProperties": { + "type": "string" }, - "type": "array" - }, - "clusterName": { - "description": "Name of the cluster for the operation.", - "type": "string" - }, - "clusterUuid": { - "type": "string", - "description": "Cluster UUId for the operation." + "description": "Output-only. Labels associated with the operation", + "type": "object" }, - "operationType": { - "description": "Output-only The operation type.", - "type": "string" + "status": { + "$ref": "ClusterOperationStatus", + "description": "Output-only. Current operation status." }, - "description": { - "description": "Output-only Short description of operation.", - "type": "string" + "statusHistory": { + "description": "Output-only. The previous operation status.", + "items": { + "$ref": "ClusterOperationStatus" + }, + "type": "array" } }, - "id": "OperationMetadata", - "description": "Metadata describing the operation.", - "type": "object" + "id": "ClusterOperationMetadata" }, - "JobPlacement": { - "description": "Cloud Dataproc job configuration.", + "Empty": { "type": "object", - "properties": { - "clusterUuid": { - "description": "Output-only A cluster UUID generated by the Dataproc service when the job is submitted.", - "type": "string" - }, - "clusterName": { - "description": "Required The name of the cluster where the job will be submitted.", - "type": "string" - } - }, - "id": "JobPlacement" + "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 {}." }, - "PigJob": { - "description": "A Cloud Dataproc job for running Pig queries on YARN.", + "HiveJob": { "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" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "queryFileUri": { + "type": "string", + "description": "The HCFS URI of the script that contains Hive queries." + }, "jarFileUris": { - "description": "Optional HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", + "description": "Optional HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", "items": { "type": "string" }, @@ -1316,423 +1103,407 @@ "additionalProperties": { "type": "string" }, - "description": "Optional Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "description": "Optional Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", "type": "object" }, - "loggingConfiguration": { - "description": "Optional The runtime log configuration for job execution.", - "$ref": "LoggingConfiguration" - }, "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.", + "description": "Optional A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", "type": "object" - }, - "continueOnFailure": { - "description": "Optional Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", - "type": "boolean" - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains the Pig queries.", - "type": "string" - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" } }, - "id": "PigJob" + "id": "HiveJob", + "description": "A Cloud Dataproc job for running Hive queries on YARN." }, - "ClusterStatus": { - "description": "The status of a cluster and its instances.", + "WorkflowGraph": { + "description": "The workflow graph.", "type": "object", "properties": { - "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": "The cluster's state.", - "type": "string" - }, - "substate": { - "description": "Output-only Additional state information that includes status reported by the agent.", - "type": "string", - "enumDescriptions": [ - "", - "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" - ] - }, - "stateStartTime": { - "format": "google-datetime", - "description": "Time when this state was entered.", - "type": "string" - }, - "detail": { - "description": "Optional details of cluster's state.", - "type": "string" + "nodes": { + "description": "Output-only The workflow nodes.", + "items": { + "$ref": "WorkflowNode" + }, + "type": "array" } }, - "id": "ClusterStatus" + "id": "WorkflowGraph" }, - "AcceleratorConfiguration": { - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine).", + "DiagnoseClusterResults": { + "description": "The location of diagnostic output.", "type": "object", "properties": { - "acceleratorCount": { - "format": "int32", - "description": "The number of the accelerator cards of this type exposed to this instance.", - "type": "integer" - }, - "acceleratorTypeUri": { - "description": "Full or partial URI of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)", + "outputUri": { + "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", "type": "string" } }, - "id": "AcceleratorConfiguration" + "id": "DiagnoseClusterResults" }, - "ClusterOperation": { + "SoftwareConfiguration": { "type": "object", "properties": { - "error": { - "description": "Output-only Error, if operation failed.", - "type": "string" + "properties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Optional The properties to set on daemon configuration files.Property keys are specified in \"prefix:property\" format, such as \"core:fs.defaultFS\". The following are supported prefixes and their mappings: core - core-site.xml hdfs - hdfs-site.xml mapred - mapred-site.xml yarn - yarn-site.xml hive - hive-site.xml pig - pig.properties spark - spark-defaults.conf" }, - "operationId": { - "description": "Output-only The id of the cluster operation.", + "imageVersion": { + "description": "Optional The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", "type": "string" } }, - "id": "ClusterOperation" + "id": "SoftwareConfiguration", + "description": "Specifies the selection and configuration of software inside the cluster." }, - "WorkflowMetadata": { - "id": "WorkflowMetadata", - "description": "A Cloud Dataproc workflow template resource.", + "PySparkJob": { + "description": "A Cloud Dataproc job for running PySpark applications on YARN.", "type": "object", "properties": { - "state": { - "description": "Output-only The workflow state.", - "type": "string", - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." - ], - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" - ] + "jarFileUris": { + "description": "Optional HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", + "items": { + "type": "string" + }, + "type": "array" }, - "createCluster": { - "$ref": "ClusterOperation", - "description": "Output-only The create cluster operation metadata." + "loggingConfiguration": { + "description": "Optional The runtime log configuration for job execution.", + "$ref": "LoggingConfiguration" }, - "version": { - "format": "int32", - "description": "Output-only The version of template at the time of workflow instantiation.", - "type": "integer" + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" }, - "graph": { - "$ref": "WorkflowGraph", - "description": "Output-only The workflow graph." + "args": { + "items": { + "type": "string" + }, + "type": "array", + "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." }, - "template": { - "description": "Output-only The \"resource name\" of the template.", - "type": "string" + "fileUris": { + "description": "Optional HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", + "items": { + "type": "string" + }, + "type": "array" }, - "deleteCluster": { - "$ref": "ClusterOperation", - "description": "Output-only The delete cluster operation metadata." - } - } - }, - "ManagedGroupConfiguration": { - "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" + "pythonFileUris": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Optional HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip." }, - "instanceTemplateName": { + "mainPythonFileUri": { "type": "string", - "description": "Output-only The name of the Instance Template used for the Managed Instance Group." + "description": "Required The Hadoop Compatible Filesystem (HCFS) URI of the main Python file to use as the driver. Must be a .py file." + }, + "archiveUris": { + "description": "Optional HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "ManagedGroupConfiguration" + "id": "PySparkJob" }, - "ListClustersResponse": { + "LoggingConfiguration": { + "type": "object", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "clusters": { - "description": "Output-only The clusters in the project.", - "items": { - "$ref": "Cluster" + "driverLogLevels": { + "additionalProperties": { + "type": "string", + "enum": [ + "LEVEL_UNSPECIFIED", + "ALL", + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "FATAL", + "OFF" + ] }, - "type": "array" + "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": "ListClustersResponse", - "description": "The list of all clusters in a project.", - "type": "object" + "id": "LoggingConfiguration", + "description": "The runtime logging configuration of the job." }, - "Job": { - "id": "Job", - "description": "A Cloud Dataproc job resource.", + "ClusterConfiguration": { + "description": "The cluster configuration.", "type": "object", "properties": { - "driverInputResourceUri": { - "description": "Output-only A URI pointing to the location of the stdin of the job's driver program, only set if the job is interactive.", - "type": "string" + "secondaryWorkerConfiguration": { + "description": "Optional The Google Compute Engine configuration settings for additional worker instances in a cluster.", + "$ref": "InstanceGroupConfiguration" }, - "hadoopJob": { - "description": "Job is a Hadoop job.", - "$ref": "HadoopJob" + "initializationActions": { + "description": "Optional Commands to execute on each node after configuration 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:\nROLE=$(/usr/share/google/get_metadata_value attributes/role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", + "items": { + "$ref": "NodeInitializationAction" + }, + "type": "array" }, - "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." + "workerConfiguration": { + "$ref": "InstanceGroupConfiguration", + "description": "Optional The Google Compute Engine configuration settings for worker instances in a cluster." }, - "placement": { - "description": "Required Job information, including how, when, and where to run the job.", - "$ref": "JobPlacement" + "softwareConfiguration": { + "description": "Optional The configuration settings for software inside the cluster.", + "$ref": "SoftwareConfiguration" }, - "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" + "gceClusterConfiguration": { + "$ref": "GceClusterConfiguration", + "description": "Required The shared Google Compute Engine configuration settings for all instances in a cluster." }, - "submittedBy": { - "description": "Output-only The email address of the user submitting the job. For jobs submitted on the cluster, the address is \u003ccode\u003eusername@hostname\u003c/code\u003e.", + "configurationBucket": { + "description": "Optional A Google Cloud Storage staging bucket used for sharing generated SSH keys and configuration. 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" }, - "scheduling": { - "$ref": "JobScheduling", - "description": "Optional Job scheduling configuration." - }, - "pigJob": { - "$ref": "PigJob", - "description": "Job is a Pig job." - }, - "hiveJob": { - "description": "Job is a Hive job.", - "$ref": "HiveJob" + "masterConfiguration": { + "$ref": "InstanceGroupConfiguration", + "description": "Optional The Google Compute Engine configuration settings for the master instance in a cluster." + } + }, + "id": "ClusterConfiguration" + }, + "ClusterMetrics": { + "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.", + "type": "object", + "properties": { + "yarnMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The YARN metrics.", + "type": "object" }, - "labels": { - "description": "Optional The labels to associate with this job.Label keys must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given job.", - "type": "object", + "hdfsMetrics": { "additionalProperties": { + "format": "int64", "type": "string" - } + }, + "description": "The HDFS metrics.", + "type": "object" + } + }, + "id": "ClusterMetrics" + }, + "InstanceGroupConfiguration": { + "description": "The configuration settings for Google Compute Engine resources in an instance group, such as a master or worker group.", + "type": "object", + "properties": { + "diskConfiguration": { + "$ref": "DiskConfiguration", + "description": "Disk option configuration settings." }, - "driverOutputResourceUri": { - "description": "Output-only A URI pointing to the location of the stdout of the job's driver program.", + "isPreemptible": { + "description": "Specifies that this instance group contains Preemptible Instances.", + "type": "boolean" + }, + "imageUri": { + "description": "Output-only The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfiguration.image_version.", "type": "string" }, - "sparkSqlJob": { - "description": "Job is a SparkSql job.", - "$ref": "SparkSqlJob" + "machineTypeUri": { + "description": "The Google Compute Engine machine type used for cluster instances. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2.", + "type": "string" }, - "sparkJob": { - "$ref": "SparkJob", - "description": "Job is a Spark job." + "managedGroupConfiguration": { + "description": "Output-only The configuration for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", + "$ref": "ManagedGroupConfiguration" }, - "statusHistory": { + "instanceNames": { + "description": "The list of instance names. Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Dataproc derive the name).", "items": { - "$ref": "JobStatus" + "type": "string" }, - "type": "array", - "description": "Output-only The previous job status." + "type": "array" }, - "yarnApplications": { - "description": "Output-only The collection of YARN applications spun up by this job.", + "accelerators": { "items": { - "$ref": "YarnApplication" + "$ref": "AcceleratorConfiguration" }, - "type": "array" - }, - "pysparkJob": { - "description": "Job is a Pyspark job.", - "$ref": "PySparkJob" - }, - "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." + "type": "array", + "description": "Optional The Google Compute Engine accelerator configuration for these instances." }, - "interactive": { - "description": "Optional If set to true, the driver's stdin will be kept open and driver_input_uri will be set to provide a path at which additional input can be sent to the driver.", - "type": "boolean" + "numInstances": { + "format": "int32", + "description": "The number of VM instances in the instance group. For master instance groups, must be set to 1.", + "type": "integer" } - } + }, + "id": "InstanceGroupConfiguration" }, - "SparkJob": { - "id": "SparkJob", - "description": "A Cloud Dataproc job for running Spark applications on YARN.", + "GceClusterConfiguration": { + "description": "Common configuration settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", "type": "object", "properties": { - "mainJarFileUri": { - "description": "The Hadoop Compatible Filesystem (HCFS) URI of the jar file that contains the main class.", + "subnetworkUri": { + "description": "The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0.", "type": "string" }, - "jarFileUris": { - "description": "Optional HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", - "items": { - "type": "string" - }, - "type": "array" + "networkUri": { + "description": "The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see https://cloud.google.com/compute/docs/subnetworks for more information). Example: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default.", + "type": "string" }, - "loggingConfiguration": { - "description": "Optional The runtime log configuration for job execution.", - "$ref": "LoggingConfiguration" + "zoneUri": { + "description": "Required The zone where the Google Compute Engine cluster will be located. Example: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone].", + "type": "string" }, - "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.", + "metadata": { + "description": "The Google Compute Engine metadata entries to add to all instances.", "type": "object", "additionalProperties": { "type": "string" } }, - "args": { - "description": "Optional The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", + "internalIpOnly": { + "description": "If true, all instances in the cluser 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 restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", + "type": "boolean" + }, + "serviceAccountScopes": { "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included: - https://www.googleapis.com/auth/cloud.useraccounts.readonly - https://www.googleapis.com/auth/devstorage.read_write - https://www.googleapis.com/auth/logging.write If no scopes are specfied, the following defaults are also provided: - https://www.googleapis.com/auth/bigquery - https://www.googleapis.com/auth/bigtable.admin.table - https://www.googleapis.com/auth/bigtable.data - https://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.", + "tags": { + "description": "The Google Compute Engine tags to add to all instances.", "items": { "type": "string" }, "type": "array" }, - "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.", + "serviceAccount": { + "description": "Optional The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", "type": "string" - }, - "archiveUris": { - "items": { - "type": "string" - }, - "type": "array", - "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." } - } + }, + "id": "GceClusterConfiguration" }, - "DiskConfiguration": { - "description": "Specifies the configuration of disk options for a group of VM instances.", + "CancelOperationRequest": { + "properties": {}, + "id": "CancelOperationRequest", + "description": "The request message for Operations.CancelOperation.", + "type": "object" + }, + "DiagnoseClusterOutputLocation": { + "id": "DiagnoseClusterOutputLocation", + "description": "The location of diagnostic output.", "type": "object", "properties": { - "numLocalSsds": { - "type": "integer", - "format": "int32", - "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 data. If one or more SSDs are attached, this runtime bulk data is spread across them, and the boot disk contains only basic configuration and installed binaries." - }, - "bootDiskSizeGb": { - "format": "int32", - "description": "Optional Size in GB of the boot disk (default is 500GB).", - "type": "integer" + "outputUri": { + "description": "Output-only The Google Cloud Storage URI of the diagnostic output. This is a plain text file with a summary of collected diagnostics.", + "type": "string" } - }, - "id": "DiskConfiguration" + } }, - "JobStatus": { + "WorkflowNode": { + "type": "object", "properties": { - "substate": { - "description": "Output-only Additional state information, which includes status reported by the agent.", + "state": { + "enum": [ + "NODE_STATUS_UNSPECIFIED", + "BLOCKED", + "RUNNABLE", + "RUNNING", + "COMPLETED", + "FAILED" + ], + "description": "Output-only The node state.", "type": "string", "enumDescriptions": [ "", - "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" + "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." ] }, - "stateStartTime": { - "format": "google-datetime", - "description": "Output-only The time when this state was entered.", - "type": "string" + "error": { + "description": "Output-only The error detail.", + "type": "string" + }, + "stepId": { + "description": "Output-only The name of the node.", + "type": "string" + }, + "jobId": { + "description": "Output-only The job id; populated after the node enters RUNNING state.", + "type": "string" + }, + "prerequisiteStepIds": { + "description": "Output-only Node's prerequisite nodes.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "WorkflowNode", + "description": "The workflow node." + }, + "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" + } }, - "details": { - "description": "Optional Job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "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": { - "description": "Required 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 shortly 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 cancelation 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" - ] + "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": "JobStatus", - "description": "Cloud Dataproc job status.", - "type": "object" + "id": "Operation" }, - "ClusterOperationStatus": { - "id": "ClusterOperationStatus", + "OperationStatus": { "description": "The status of the operation.", "type": "object", "properties": { "details": { - "description": "Output-only.A message containing any operation metadata details.", - "type": "string" + "type": "string", + "description": "A message containing any operation metadata details." }, "state": { - "description": "Output-only. A message containing the operation state.", - "type": "string", "enumDescriptions": [ "Unused.", "The operation has been created.", @@ -1744,95 +1515,131 @@ "PENDING", "RUNNING", "DONE" - ] + ], + "description": "A message containing the operation state.", + "type": "string" }, "innerState": { - "description": "Output-only. A message containing the detailed operation state.", + "description": "A message containing the detailed operation state.", "type": "string" }, "stateStartTime": { + "type": "string", "format": "google-datetime", - "description": "Output-only. The time this state was entered.", - "type": "string" + "description": "The time this state was entered." } - } + }, + "id": "OperationStatus" }, - "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.", + "JobReference": { + "description": "Encapsulates the full scoping used to reference a job.", "type": "object", "properties": { - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "NEW", - "NEW_SAVING", - "SUBMITTED", - "ACCEPTED", - "RUNNING", - "FINISHED", - "FAILED", - "KILLED" - ], - "description": "Required The application state.", - "type": "string", - "enumDescriptions": [ - "Status is unspecified.", - "Status is NEW.", - "Status is NEW_SAVING.", - "Status is SUBMITTED.", - "Status is ACCEPTED.", - "Status is RUNNING.", - "Status is FINISHED.", - "Status is FAILED.", - "Status is KILLED." - ] - }, - "name": { - "description": "Required The application name.", + "jobId": { + "description": "Required 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" }, - "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": { - "format": "float", - "description": "Required The numerical progress of the application, from 1 to 100.", - "type": "number" } }, - "id": "YarnApplication" + "id": "JobReference" }, - "QueryList": { + "SubmitJobRequest": { + "description": "A request to submit a job.", "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", + "job": { + "$ref": "Job", + "description": "Required The job resource." + } + }, + "id": "SubmitJobRequest" + }, + "Status": { + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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.", "items": { - "type": "string" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } }, "type": "array" } }, - "id": "QueryList", - "description": "A list of queries to run on a cluster." + "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." }, - "HadoopJob": { - "id": "HadoopJob", - "description": "A Cloud Dataproc job for running Hadoop MapReduce jobs on YARN.", + "JobScheduling": { + "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release.", "type": "object", "properties": { - "mainJarFileUri": { - "description": "The Hadoop Compatible Filesystem (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'", + "maxFailuresPerHour": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "JobScheduling" + }, + "NodeInitializationAction": { + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "type": "object", + "properties": { + "executionTimeout": { + "format": "google-duration", + "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.", "type": "string" }, - "jarFileUris": { - "description": "Optional Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", + "executableFile": { + "description": "Required Google Cloud Storage URI of executable file.", + "type": "string" + } + }, + "id": "NodeInitializationAction" + }, + "ListJobsResponse": { + "description": "A list of jobs in a project.", + "type": "object", + "properties": { + "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.", "items": { - "type": "string" + "$ref": "Job" }, "type": "array" - }, + } + }, + "id": "ListJobsResponse" + }, + "CancelJobRequest": { + "id": "CancelJobRequest", + "description": "A request to cancel a job.", + "type": "object", + "properties": {} + }, + "SparkSqlJob": { + "description": "A Cloud Dataproc job for running Spark SQL queries.", + "type": "object", + "properties": { "loggingConfiguration": { "$ref": "LoggingConfiguration", "description": "Optional The runtime log configuration for job execution." @@ -1841,106 +1648,175 @@ "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.", + "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" }, - "args": { - "items": { + "queryList": { + "description": "A list of queries.", + "$ref": "QueryList" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", + "type": "string" + }, + "scriptVariables": { + "additionalProperties": { "type": "string" }, - "type": "array", - "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." + "description": "Optional Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", + "type": "object" }, - "fileUris": { - "description": "Optional HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", + "jarFileUris": { + "description": "Optional HCFS URIs of jar files to be added to the Spark CLASSPATH.", "items": { "type": "string" }, "type": "array" + } + }, + "id": "SparkSqlJob" + }, + "Cluster": { + "description": "Describes the identifying information, configuration, and status of a cluster of Google Compute Engine instances.", + "type": "object", + "properties": { + "clusterUuid": { + "type": "string", + "description": "Output-only A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster." + }, + "clusterName": { + "type": "string", + "description": "Required The cluster name. Cluster names within a project must be unique. Names from deleted clusters can be reused." + }, + "projectId": { + "description": "Required The Google Cloud Platform project ID that the cluster belongs to.", + "type": "string" + }, + "configuration": { + "description": "Required The cluster configuration. Note that Cloud Dataproc may set default values, and values may change when clusters are updated.", + "$ref": "ClusterConfiguration" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional The labels to associate with this cluster.Label keys must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}{0,62}Label values must be between 1 and 63 characters long, and must conform to the following PCRE regular expression: \\p{Ll}\\p{Lo}\\p{N}_-{0,63}No more than 64 labels can be associated with a given cluster.", + "type": "object" + }, + "metrics": { + "$ref": "ClusterMetrics", + "description": "Contains cluster daemon metrics such as HDFS and YARN stats." }, - "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" + "status": { + "$ref": "ClusterStatus", + "description": "Output-only Cluster status." }, - "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.", + "statusHistory": { + "description": "Output-only Previous cluster statuses.", "items": { - "type": "string" + "$ref": "ClusterStatus" }, "type": "array" } - } + }, + "id": "Cluster" }, - "DiagnoseClusterRequest": { - "description": "A request to collect cluster diagnostic information.", - "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest" + "ListOperationsResponse": { + "properties": { + "operations": { + "items": { + "$ref": "Operation" + }, + "type": "array", + "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", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, - "ClusterOperationMetadata": { + "OperationMetadata": { "description": "Metadata describing the operation.", "type": "object", "properties": { + "operationType": { + "type": "string", + "description": "Output-only The operation type." + }, "description": { - "description": "Output-only. Short description of operation.", + "description": "Output-only Short description of operation.", "type": "string" }, "warnings": { - "description": "Output-only. Errors encountered during operation execution.", + "description": "Output-only Errors encountered during operation execution.", "items": { "type": "string" }, "type": "array" }, - "labels": { - "description": "Output-only. Labels associated with the operation", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, "status": { - "$ref": "ClusterOperationStatus", - "description": "Output-only. Current operation status." + "$ref": "OperationStatus", + "description": "Output-only Current operation status." }, "statusHistory": { - "description": "Output-only. The previous operation status.", + "description": "Output-only Previous operation status.", "items": { - "$ref": "ClusterOperationStatus" + "$ref": "OperationStatus" }, "type": "array" }, - "clusterName": { - "description": "Output-only. Name of the cluster for the operation.", - "type": "string" - }, "clusterUuid": { - "description": "Output-only. Cluster UUID for the operation.", + "description": "Cluster UUId for the operation.", "type": "string" }, - "operationType": { - "description": "Output-only. The operation type.", + "clusterName": { + "description": "Name of the cluster for the operation.", "type": "string" } }, - "id": "ClusterOperationMetadata" + "id": "OperationMetadata" }, - "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 configuration.", "type": "object", - "properties": {}, - "id": "Empty" + "properties": { + "clusterUuid": { + "description": "Output-only A cluster UUID generated by the Dataproc service when the job is submitted.", + "type": "string" + }, + "clusterName": { + "type": "string", + "description": "Required The name of the cluster where the job will be submitted." + } + }, + "id": "JobPlacement" }, - "HiveJob": { - "description": "A Cloud Dataproc job for running Hive queries on YARN.", + "PigJob": { + "id": "PigJob", + "description": "A Cloud Dataproc job for running Pig queries on YARN.", "type": "object", "properties": { + "loggingConfiguration": { + "$ref": "LoggingConfiguration", + "description": "Optional The runtime log configuration for job execution." + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", + "type": "object" + }, "continueOnFailure": { "type": "boolean", "description": "Optional Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries." }, "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", + "description": "The HCFS URI of the script that contains the Pig queries.", "type": "string" }, "queryList": { @@ -1948,60 +1824,184 @@ "description": "A list of queries." }, "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.", + "description": "Optional HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", "items": { "type": "string" }, "type": "array" }, "scriptVariables": { + "type": "object", "additionalProperties": { "type": "string" }, - "description": "Optional Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", - "type": "object" + "description": "Optional Mapping of query variable names to values (equivalent to the Pig command: name=[value])." + } + } + }, + "ClusterStatus": { + "type": "object", + "properties": { + "substate": { + "enumDescriptions": [ + "", + "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" }, - "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" - } + "stateStartTime": { + "format": "google-datetime", + "description": "Time when this state was entered.", + "type": "string" + }, + "detail": { + "description": "Optional details of cluster's state.", + "type": "string" + }, + "state": { + "enumDescriptions": [ + "The cluster state is unknown.", + "The cluster is being created and set up. It is not ready for use.", + "The cluster is currently running and healthy. It is ready for use.", + "The cluster encountered an error. It is not ready for use.", + "The cluster is being deleted. It cannot be used.", + "The cluster is being updated. It continues to accept and process jobs." + ], + "enum": [ + "UNKNOWN", + "CREATING", + "RUNNING", + "ERROR", + "DELETING", + "UPDATING" + ], + "description": "The cluster's state.", + "type": "string" } }, - "id": "HiveJob" + "id": "ClusterStatus", + "description": "The status of a cluster and its instances." }, - "WorkflowGraph": { - "description": "The workflow graph.", + "AcceleratorConfiguration": { + "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": { - "nodes": { - "description": "Output-only The workflow nodes.", + "acceleratorCount": { + "format": "int32", + "description": "The number of the accelerator cards of this type exposed to this instance.", + "type": "integer" + }, + "acceleratorTypeUri": { + "description": "Full or partial URI of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)", + "type": "string" + } + }, + "id": "AcceleratorConfiguration" + }, + "ListClustersResponse": { + "type": "object", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "clusters": { + "description": "Output-only The clusters in the project.", "items": { - "$ref": "WorkflowNode" + "$ref": "Cluster" }, "type": "array" } }, - "id": "WorkflowGraph" + "id": "ListClustersResponse", + "description": "The list of all clusters in a project." }, - "DiagnoseClusterResults": { + "ManagedGroupConfiguration": { + "description": "Specifies the resources used to actively manage an instance group.", + "type": "object", "properties": { - "outputUri": { - "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", + "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": "DiagnoseClusterResults", - "description": "The location of diagnostic output.", + "id": "ManagedGroupConfiguration" + }, + "WorkflowMetadata": { + "properties": { + "deleteCluster": { + "$ref": "ClusterOperation", + "description": "Output-only The delete cluster operation metadata." + }, + "state": { + "enumDescriptions": [ + "Unused.", + "The operation has been created.", + "The operation is running.", + "The operation is done; either cancelled or completed." + ], + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], + "description": "Output-only The workflow state.", + "type": "string" + }, + "createCluster": { + "$ref": "ClusterOperation", + "description": "Output-only The create cluster operation metadata." + }, + "version": { + "type": "integer", + "format": "int32", + "description": "Output-only The version of template at the time of workflow instantiation." + }, + "graph": { + "$ref": "WorkflowGraph", + "description": "Output-only The workflow graph." + }, + "template": { + "description": "Output-only The \"resource name\" of the template.", + "type": "string" + } + }, + "id": "WorkflowMetadata", + "description": "A Cloud Dataproc workflow template resource.", "type": "object" + }, + "ClusterOperation": { + "id": "ClusterOperation", + "type": "object", + "properties": { + "error": { + "description": "Output-only Error, if operation failed.", + "type": "string" + }, + "operationId": { + "description": "Output-only The id of the cluster operation.", + "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" + "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": "v1beta1", "baseUrl": "https://dataproc.googleapis.com/", "auth": { @@ -2013,9 +2013,9 @@ } } }, + "kind": "discovery#restDescription", "servicePath": "", "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "kind": "discovery#restDescription", "rootUrl": "https://dataproc.googleapis.com/", "basePath": "", "ownerDomain": "google.com", diff --git a/DiscoveryJson/dataproc_v1beta2.json b/DiscoveryJson/dataproc_v1beta2.json index f0fe18e07c..adc3cb11f8 100644 --- a/DiscoveryJson/dataproc_v1beta2.json +++ b/DiscoveryJson/dataproc_v1beta2.json @@ -1,138 +1,198 @@ { + "discoveryVersion": "v1", + "ownerName": "Google", "version_module": "True", "resources": { "projects": { "resources": { "regions": { "resources": { - "operations": { + "jobs": { "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": "Empty" + "submit": { + "description": "Submits a job to a cluster.", + "request": { + "$ref": "SubmitJobRequest" }, - "parameterOrder": [ - "name" - ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "projectId", + "region" ], + "response": { + "$ref": "Job" + }, "parameters": { - "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "projectId": { + "type": "string", + "required": true, "location": "path", - "description": "The name of the operation resource to be cancelled.", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." + }, + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", "required": true } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "id": "dataproc.projects.regions.operations.cancel", - "path": "v1beta2/{+name}:cancel" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", + "id": "dataproc.projects.regions.jobs.submit" }, "delete": { - "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "projectId", + "region", + "jobId" ], + "httpMethod": "DELETE", "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", + "jobId": { + "location": "path", + "description": "Required. The job ID.", + "type": "string", + "required": true + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string", + "required": true, + "location": "path" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" } }, - "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." + "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." }, - "get": { + "list": { + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs", + "id": "dataproc.projects.regions.jobs.list", + "description": "Lists regions/{region}/jobs in a project.", "httpMethod": "GET", - "response": { - "$ref": "Operation" - }, "parameterOrder": [ - "name" + "projectId", + "region" ], + "response": { + "$ref": "ListJobsResponse" + }, "parameters": { - "name": { + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "required": true + }, + "clusterName": { + "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", + "type": "string", + "location": "query" + }, + "projectId": { "location": "path", - "description": "The name of the operation resource." + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string", + "required": true + }, + "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 INACTIVE. 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", + "enum": [ + "ALL", + "ACTIVE", + "NON_ACTIVE" + ], + "description": "Optional. Specifies enumerated categories of jobs to list (default = match ALL jobs).", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "Optional. The number of results to return in each response.", + "type": "integer", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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." + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs" }, - "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.", + "cancel": { "response": { - "$ref": "ListOperationsResponse" + "$ref": "Job" }, "parameterOrder": [ - "name" + "projectId", + "region", + "jobId" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "The standard list page token.", + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "location": "query" + "required": true }, - "name": { - "description": "The name of the operation's parent resource.", + "jobId": { + "description": "Required. The job ID.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/regions/[^/]+/operations$", "location": "path" + }, + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", - "id": "dataproc.projects.regions.operations.list", - "path": "v1beta2/{+name}" - } - } - }, - "jobs": { - "methods": { - "cancel": { + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "id": "dataproc.projects.regions.jobs.cancel", + "path": "v1beta2/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" + } + }, + "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": "Job" }, - "httpMethod": "POST", + "description": "Updates a job in a project.", + "httpMethod": "PATCH", "parameterOrder": [ "projectId", "region", @@ -141,6 +201,9 @@ "response": { "$ref": "Job" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "jobId": { "description": "Required. The job ID.", @@ -154,43 +217,40 @@ "type": "string", "required": true }, + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" + }, "region": { "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", "required": true } - }, - "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" + } }, "get": { "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.get", "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.get", "description": "Gets the resource representation for a job in a project.", - "response": { - "$ref": "Job" - }, + "httpMethod": "GET", "parameterOrder": [ "projectId", "region", "jobId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Job" + }, "parameters": { "jobId": { - "type": "string", - "required": true, "location": "path", - "description": "Required. The job ID." + "description": "Required. The job ID.", + "type": "string", + "required": true }, "projectId": { "location": "path", @@ -204,204 +264,156 @@ "type": "string", "required": true } - } - }, - "patch": { - "request": { - "$ref": "Job" }, - "description": "Updates a job in a project.", - "response": { - "$ref": "Job" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "clusters": { + "methods": { + "diagnose": { + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "id": "dataproc.projects.regions.clusters.diagnose", + "request": { + "$ref": "DiagnoseClusterRequest" }, + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "httpMethod": "POST", "parameterOrder": [ "projectId", "region", - "jobId" + "clusterName" ], - "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "updateMask": { - "format": "google-fieldmask", - "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.", - "type": "string", - "location": "query" - }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true - }, - "jobId": { - "description": "Required. The job ID.", - "type": "string", "required": true, "location": "path" }, - "projectId": { - "type": "string", - "required": true, + "clusterName": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." - } - }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.patch", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}" - }, - "submit": { - "request": { - "$ref": "SubmitJobRequest" - }, - "description": "Submits a job to a cluster.", - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "region" - ], - "httpMethod": "POST", - "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.", + "description": "Required. The cluster name.", "type": "string", - "required": true, - "location": "path" + "required": true }, - "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.", "type": "string", "required": true } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", - "id": "dataproc.projects.regions.jobs.submit", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit" + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose" }, "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" + "$ref": "Operation" }, "parameterOrder": [ "projectId", "region", - "jobId" + "clusterName" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "jobId": { - "type": "string", - "required": true, + "region": { "location": "path", - "description": "Required. The job ID." + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", + "required": true }, - "projectId": { + "clusterName": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "description": "Required. The cluster name.", "type": "string", "required": true }, - "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.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "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}" + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.delete", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "description": "Deletes a cluster in a project." }, "list": { - "response": { - "$ref": "ListJobsResponse" - }, + "description": "Lists all regions/{region}/clusters in a project.", "httpMethod": "GET", "parameterOrder": [ "projectId", "region" ], + "response": { + "$ref": "ListClustersResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "pageToken": { - "type": "string", "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results." + "description": "Optional. The standard List page token.", + "type": "string" }, "pageSize": { - "format": "int32", - "description": "Optional. The number of results to return in each response.", - "type": "integer", - "location": "query" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "type": "string", - "required": true, - "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" + "format": "int32", + "description": "Optional. The standard List page size.", + "type": "integer" }, "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." }, "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 INACTIVE. 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 = *", + "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" }, - "jobStateMatcher": { - "description": "Optional. Specifies enumerated categories of jobs to list (default = match ALL jobs).", + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "location": "query", - "enum": [ - "ALL", - "ACTIVE", - "NON_ACTIVE" - ] + "required": true } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs", - "id": "dataproc.projects.regions.jobs.list", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs", - "description": "Lists regions/{region}/jobs in a project." - } - } - }, - "clusters": { - "methods": { - "get": { - "description": "Gets the resource representation for a cluster in a project.", - "response": { + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "id": "dataproc.projects.regions.clusters.list" + }, + "create": { + "id": "dataproc.projects.regions.clusters.create", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "request": { "$ref": "Cluster" }, + "description": "Creates a cluster in a project.", + "response": { + "$ref": "Operation" + }, "parameterOrder": [ "projectId", - "region", - "clusterName" + "region" ], - "httpMethod": "GET", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -412,24 +424,20 @@ "type": "string", "required": true }, - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "type": "string", - "required": true - }, "projectId": { - "location": "path", "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "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/{projectId}/regions/{region}/clusters" }, "patch": { + "request": { + "$ref": "Cluster" + }, + "description": "Updates a cluster in a project.", "httpMethod": "PATCH", "parameterOrder": [ "projectId", @@ -439,6 +447,9 @@ "response": { "$ref": "Operation" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "clusterName": { "location": "path", @@ -459,37 +470,37 @@ "type": "string" }, "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.patch", - "description": "Updates a cluster in a project.", - "request": { - "$ref": "Cluster" - } + "id": "dataproc.projects.regions.clusters.patch" }, - "diagnose": { - "response": { - "$ref": "Operation" - }, + "get": { + "description": "Gets the resource representation for a cluster in a project.", + "httpMethod": "GET", "parameterOrder": [ "projectId", "region", "clusterName" ], - "httpMethod": "POST", + "response": { + "$ref": "Cluster" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "type": "string", + "required": true + }, "clusterName": { "description": "Required. The cluster name.", "type": "string", @@ -497,144 +508,135 @@ "location": "path" }, "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "type": "string", "required": true, + "location": "path" + } + }, + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.get" + } + } + }, + "operations": { + "methods": { + "cancel": { + "parameters": { + "name": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "description": "The name of the operation resource to be cancelled.", "type": "string", "required": true, - "location": "path" + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "request": { - "$ref": "DiagnoseClusterRequest" + "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.", + "response": { + "$ref": "Empty" }, - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation." + "parameterOrder": [ + "name" + ], + "httpMethod": "POST" }, "delete": { - "description": "Deletes a cluster in a project.", + "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.", "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, "parameterOrder": [ - "projectId", - "region", - "clusterName" + "name" ], + "response": { + "$ref": "Empty" + }, "parameters": { - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "type": "string", - "required": true - }, - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "name": { + "description": "The name of the operation resource to be deleted.", "type": "string", "required": true, + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.delete" - }, - "list": { - "description": "Lists all regions/{region}/clusters in a project.", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.regions.operations.delete" + }, + "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": "ListClustersResponse" + "$ref": "Operation" }, "parameterOrder": [ - "projectId", - "region" + "name" ], "httpMethod": "GET", "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Optional. The standard List page size.", - "type": "integer" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "type": "string", - "required": true, - "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" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "name": { + "location": "path", + "description": "The name of the operation resource.", "type": "string", "required": true, - "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "Optional. The standard List page token." + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters" + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "id": "dataproc.projects.regions.operations.get", + "path": "v1beta2/{+name}" }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region" - ], + "list": { + "httpMethod": "GET", "response": { - "$ref": "Operation" + "$ref": "ListOperationsResponse" }, + "parameterOrder": [ + "name" + ], "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "region": { - "type": "string", - "required": true, - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" }, - "projectId": { + "name": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "description": "The name of the operation's parent resource.", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/regions/[^/]+/operations$" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "The standard list page size." + }, + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", - "request": { - "$ref": "Cluster" - }, - "description": "Creates a cluster in a project." + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.regions.operations.list", + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id." } } } @@ -644,26 +646,16 @@ } }, "parameters": { - "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", - "location": "query" + "type": "string" }, "prettyPrint": { + "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "fields": { "location": "query", @@ -676,38 +668,38 @@ "type": "string" }, "callback": { + "location": "query", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], "location": "query", "enum": [ "1", "2" ], - "description": "V1 error format." - }, - "alt": { + "description": "V1 error format.", "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", + "v1 error format", + "v2 error format" + ] + }, + "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.", @@ -715,133 +707,393 @@ "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", "description": "Pretty-print response.", "default": "true", - "type": "boolean" + "type": "boolean", + "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" } }, "schemas": { - "JobReference": { - "description": "Encapsulates the full scoping used to reference a job.", - "type": "object", - "properties": { - "jobId": { - "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", - "type": "string" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "type": "string" - } - }, - "id": "JobReference" - }, - "SubmitJobRequest": { - "properties": { - "job": { - "$ref": "Job", - "description": "Required. The job resource." - } - }, - "id": "SubmitJobRequest", - "description": "A request to submit a job.", - "type": "object" - }, - "Status": { - "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.", + "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": { - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "type": "string" }, "type": "array" - } - }, - "id": "Status" - }, - "JobScheduling": { - "properties": { - "maxFailuresPerHour": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "JobScheduling", - "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release.", - "type": "object" - }, - "InstanceGroupConfig": { - "properties": { - "diskConfig": { - "description": "Optional. Disk option config settings.", - "$ref": "DiskConfig" - }, - "managedGroupConfig": { - "description": "Output-only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", - "$ref": "ManagedGroupConfig" - }, - "isPreemptible": { - "description": "Optional. Specifies that this instance group contains preemptible instances.", - "type": "boolean" }, - "imageUri": { - "description": "Output-only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", - "type": "string" + "loggingConfig": { + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" }, - "machineTypeUri": { - "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", - "type": "string" + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", + "type": "object" }, - "instanceNames": { - "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name).", + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { "type": "string" }, "type": "array" }, - "accelerators": { - "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "fileUris": { "items": { - "$ref": "AcceleratorConfig" + "type": "string" }, - "type": "array" + "type": "array", + "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks." + }, + "pythonFileUris": { + "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "PySparkJob" + }, + "GceClusterConfig": { + "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", + "type": "object", + "properties": { + "serviceAccount": { + "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", + "type": "string" + }, + "subnetworkUri": { + "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", + "type": "string" + }, + "networkUri": { + "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", + "type": "string" + }, + "zoneUri": { + "type": "string", + "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata))." + }, + "internalIpOnly": { + "description": "Optional. If true, all instances in the cluster will only have internal IP addresses. By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. This internal_ip_only restriction can only be enabled for subnetwork enabled networks, and all off-cluster dependencies must be configured to be accessible without external IP addresses.", + "type": "boolean" + }, + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", + "items": { + "type": "string" + }, + "type": "array" + }, + "tags": { + "description": "The Google Compute Engine tags to add to all instances (see Tagging instances).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "GceClusterConfig" + }, + "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": { + "format": "int32", + "description": "The number of the accelerator cards of this type exposed to this instance.", + "type": "integer" + }, + "acceleratorTypeUri": { + "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", + "type": "string" + } + }, + "id": "AcceleratorConfig" + }, + "ClusterMetrics": { + "description": "Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "type": "object", + "properties": { + "yarnMetrics": { + "description": "The YARN metrics.", + "type": "object", + "additionalProperties": { + "format": "int64", + "type": "string" + } + }, + "hdfsMetrics": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "The HDFS metrics.", + "type": "object" + } + }, + "id": "ClusterMetrics" + }, + "LoggingConfig": { + "description": "The runtime logging config of the job.", + "type": "object", + "properties": { + "driverLogLevels": { + "additionalProperties": { + "enum": [ + "LEVEL_UNSPECIFIED", + "ALL", + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "FATAL", + "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" + }, + "WorkflowNode": { + "id": "WorkflowNode", + "description": "The workflow node.", + "type": "object", + "properties": { + "state": { + "enumDescriptions": [ + "", + "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" + }, + "error": { + "description": "Output-only The error detail.", + "type": "string" + }, + "stepId": { + "description": "Output-only The name of the node.", + "type": "string" + }, + "jobId": { + "description": "Output-only The job id; populated after the node enters RUNNING state.", + "type": "string" + }, + "prerequisiteStepIds": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Output-only Node's prerequisite nodes." + } + } + }, + "Operation": { + "properties": { + "done": { + "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.", + "type": "boolean" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.", + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + } + }, + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a network API call.", + "type": "object" + }, + "JobReference": { + "description": "Encapsulates the full scoping used to reference a job.", + "type": "object", + "properties": { + "jobId": { + "description": "Optional. The job ID, which must be unique within the project. The job ID is generated by the server upon job submission or provided by the user as a means to perform retries without creating duplicate jobs. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The maximum length is 100 characters.", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "type": "string" + } + }, + "id": "JobReference" + }, + "SubmitJobRequest": { + "id": "SubmitJobRequest", + "description": "A request to submit a job.", + "type": "object", + "properties": { + "job": { + "$ref": "Job", + "description": "Required. The job resource." + } + } + }, + "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" + }, + "InstanceGroupConfig": { + "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group.", + "type": "object", + "properties": { + "accelerators": { + "description": "Optional. The Google Compute Engine accelerator configuration for these instances.Beta Feature: This feature is still under development. It may be changed before final release.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" }, "numInstances": { + "type": "integer", + "format": "int32", + "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1." + }, + "diskConfig": { + "description": "Optional. Disk option config settings.", + "$ref": "DiskConfig" + }, + "machineTypeUri": { + "description": "Optional. The Google Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nprojects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2\nn1-standard-2", + "type": "string" + }, + "imageUri": { + "description": "Output-only. The Google Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", + "type": "string" + }, + "isPreemptible": { + "description": "Optional. Specifies that this instance group contains preemptible instances.", + "type": "boolean" + }, + "managedGroupConfig": { + "$ref": "ManagedGroupConfig", + "description": "Output-only. The config for Google Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups." + }, + "instanceNames": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Optional. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group if not set by user (recommended practice is to let Cloud Dataproc derive the name)." + } + }, + "id": "InstanceGroupConfig" + }, + "JobScheduling": { + "type": "object", + "properties": { + "maxFailuresPerHour": { "format": "int32", - "description": "Optional. The number of VM instances in the instance group. For master instance groups, must be set to 1.", + "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.", "type": "integer" } }, - "id": "InstanceGroupConfig", - "description": "Optional. The config settings for Google Compute Engine resources in an instance group, such as a master or worker group.", - "type": "object" + "id": "JobScheduling", + "description": "Job scheduling options.Beta Feature: These options are available for testing purposes only. They may be changed before final release." }, "ListJobsResponse": { "description": "A list of jobs in a project.", @@ -862,8 +1114,6 @@ "id": "ListJobsResponse" }, "NodeInitializationAction": { - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", - "type": "object", "properties": { "executionTimeout": { "format": "google-duration", @@ -875,7 +1125,9 @@ "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" }, "CancelJobRequest": { "description": "A request to cancel a job.", @@ -887,20 +1139,12 @@ "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" - }, "scriptVariables": { + "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" + "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";)." }, "jarFileUris": { "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", @@ -910,15 +1154,23 @@ "type": "array" }, "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." + "description": "Optional. The runtime log config for job execution.", + "$ref": "LoggingConfig" }, "properties": { - "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", "additionalProperties": { "type": "string" - } + }, + "description": "Optional. A mapping of property names to values, used to configure Spark SQL's SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.", + "type": "object" + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", + "type": "string" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." } }, "id": "SparkSqlJob" @@ -927,6 +1179,10 @@ "description": "Describes the identifying information, config, and status of a cluster of Google Compute Engine instances.", "type": "object", "properties": { + "projectId": { + "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -934,13 +1190,13 @@ "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": { - "$ref": "ClusterStatus", - "description": "Output-only. Cluster status." - }, "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." + "description": "Contains cluster daemon metrics such as HDFS and YARN stats.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "$ref": "ClusterMetrics" + }, + "status": { + "description": "Output-only. Cluster status.", + "$ref": "ClusterStatus" }, "statusHistory": { "description": "Output-only. The previous cluster status.", @@ -950,19 +1206,15 @@ "type": "array" }, "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": { - "type": "string", - "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused." + "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" }, - "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" } }, @@ -970,16 +1222,16 @@ }, "ListOperationsResponse": { "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, "operations": { "description": "A list of operations that matches the specified filter in the request.", "items": { "$ref": "Operation" }, "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, "id": "ListOperationsResponse", @@ -987,24 +1239,25 @@ "type": "object" }, "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the cluster.", - "type": "object", "properties": { "properties": { - "description": "Optional. The properties to set on daemon config files.Property keys are specified in prefix:property format, such as core:fs.defaultFS. The following are supported prefixes and their mappings:\ncapacity-scheduler: capacity-scheduler.xml\ncore: core-site.xml\ndistcp: distcp-default.xml\nhdfs: hdfs-site.xml\nhive: hive-site.xml\nmapred: mapred-site.xml\npig: pig.properties\nspark: spark-defaults.conf\nyarn: yarn-site.xml", - "type": "object", "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.xml", + "type": "object" }, "imageVersion": { "description": "Optional. The version of software inside the cluster. It must match the regular expression [0-9]+\\.[0-9]+. If unspecified, it defaults to the latest version (see Cloud Dataproc Versioning).", "type": "string" } }, - "id": "SoftwareConfig" + "id": "SoftwareConfig", + "description": "Specifies the selection and config of software inside the cluster.", + "type": "object" }, "JobPlacement": { + "description": "Cloud Dataproc job config.", "type": "object", "properties": { "clusterUuid": { @@ -1016,40 +1269,24 @@ "type": "string" } }, - "id": "JobPlacement", - "description": "Cloud Dataproc job config." + "id": "JobPlacement" }, "PigJob": { - "id": "PigJob", "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", "type": "object", "properties": { - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", - "type": "object" - }, "continueOnFailure": { "description": "Optional. Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries.", "type": "boolean" }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, "queryFileUri": { "description": "The HCFS URI of the script that contains the Pig queries.", "type": "string" }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - }, - "scriptVariables": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value])." - }, "jarFileUris": { "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs.", "items": { @@ -1057,29 +1294,55 @@ }, "type": "array" }, + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "type": "object" + }, "loggingConfig": { "$ref": "LoggingConfig", "description": "Optional. The runtime log config for job execution." + }, + "properties": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A mapping of property names to values, used to configure Pig. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/pig/conf/pig.properties, and classes in user code.", + "type": "object" } - } + }, + "id": "PigJob" }, "ClusterStatus": { "description": "The status of a cluster and its instances.", "type": "object", "properties": { + "substate": { + "enum": [ + "UNSPECIFIED", + "UNHEALTHY", + "STALE_STATUS" + ], + "description": "Output-only. Additional state information that includes status reported by the agent.", + "type": "string", + "enumDescriptions": [ + "", + "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." + ] + }, + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only. Time when this state was entered.", + "type": "string" + }, "detail": { "description": "Output-only. Optional details of cluster's state.", "type": "string" }, "state": { - "enumDescriptions": [ - "The cluster state is unknown.", - "The cluster is being created and set up. It is not ready for use.", - "The cluster is currently running and healthy. It is ready for use.", - "The cluster encountered an error. It is not ready for use.", - "The cluster is being deleted. It cannot be used.", - "The cluster is being updated. It continues to accept and process jobs." - ], "enum": [ "UNKNOWN", "CREATING", @@ -1089,55 +1352,42 @@ "UPDATING" ], "description": "Output-only. The cluster's state.", - "type": "string" - }, - "substate": { + "type": "string", "enumDescriptions": [ - "", - "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" - }, - "stateStartTime": { - "format": "google-datetime", - "description": "Output-only. Time when this state was entered.", - "type": "string" + "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." + ] } }, "id": "ClusterStatus" }, - "ListClustersResponse": { - "description": "The list of all clusters in a project.", + "ClusterOperation": { "type": "object", "properties": { - "nextPageToken": { - "description": "Output-only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListClustersRequest\u003c/code\u003e.", + "error": { + "description": "Output-only Error, if operation failed.", "type": "string" }, - "clusters": { - "description": "Output-only. The clusters in the project.", - "items": { - "$ref": "Cluster" - }, - "type": "array" + "operationId": { + "type": "string", + "description": "Output-only The id of the cluster operation." } }, - "id": "ListClustersResponse" + "id": "ClusterOperation" }, "WorkflowMetadata": { - "id": "WorkflowMetadata", "description": "A Cloud Dataproc workflow template resource.", "type": "object", "properties": { + "deleteCluster": { + "description": "Output-only The delete cluster operation metadata.", + "$ref": "ClusterOperation" + }, "state": { - "type": "string", "enumDescriptions": [ "Unused.", "The operation has been created.", @@ -1150,56 +1400,127 @@ "RUNNING", "DONE" ], - "description": "Output-only The workflow state." + "description": "Output-only The workflow state.", + "type": "string" }, "createCluster": { - "description": "Output-only The create cluster operation metadata.", - "$ref": "ClusterOperation" + "$ref": "ClusterOperation", + "description": "Output-only The create cluster operation metadata." + }, + "graph": { + "description": "Output-only The workflow graph.", + "$ref": "WorkflowGraph" }, "version": { "format": "int32", "description": "Output-only The version of template at the time of workflow instantiation.", "type": "integer" }, - "graph": { - "$ref": "WorkflowGraph", - "description": "Output-only The workflow graph." + "template": { + "description": "Output-only The \"resource name\" of the template.", + "type": "string" + } + }, + "id": "WorkflowMetadata" + }, + "ListClustersResponse": { + "description": "The list of all clusters in a project.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Output-only. This token is included in the response if there are more results to fetch. To fetch additional results, provide this value as the page_token in a subsequent \u003ccode\u003eListClustersRequest\u003c/code\u003e.", + "type": "string" + }, + "clusters": { + "description": "Output-only. The clusters in the project.", + "items": { + "$ref": "Cluster" + }, + "type": "array" + } + }, + "id": "ListClustersResponse" + }, + "Job": { + "description": "A Cloud Dataproc job resource.", + "type": "object", + "properties": { + "statusHistory": { + "description": "Output-only. The previous job status.", + "items": { + "$ref": "JobStatus" + }, + "type": "array" + }, + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." + }, + "sparkSqlJob": { + "description": "Job is a SparkSql job.", + "$ref": "SparkSqlJob" + }, + "yarnApplications": { + "description": "Output-only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", + "items": { + "$ref": "YarnApplication" + }, + "type": "array" + }, + "pysparkJob": { + "$ref": "PySparkJob", + "description": "Job is a Pyspark job." + }, + "reference": { + "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e.", + "$ref": "JobReference" + }, + "hadoopJob": { + "description": "Job is a Hadoop job.", + "$ref": "HadoopJob" + }, + "placement": { + "$ref": "JobPlacement", + "description": "Required. Job information, including how, when, and where to run the job." + }, + "status": { + "description": "Output-only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields.", + "$ref": "JobStatus" + }, + "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." }, - "template": { - "description": "Output-only The \"resource name\" of the template.", - "type": "string" + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." }, - "deleteCluster": { - "description": "Output-only The delete cluster operation metadata.", - "$ref": "ClusterOperation" - } - } - }, - "ClusterOperation": { - "id": "ClusterOperation", - "type": "object", - "properties": { - "error": { - "description": "Output-only Error, if operation failed.", - "type": "string" + "hiveJob": { + "$ref": "HiveJob", + "description": "Job is a Hive job." }, - "operationId": { - "description": "Output-only The id of the cluster operation.", + "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" + }, + "driverOutputResourceUri": { + "description": "Output-only. A URI pointing to the location of the stdout of the job's driver program.", "type": "string" } - } + }, + "id": "Job" }, "SparkJob": { "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", "type": "object", "properties": { - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure Spark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", - "type": "object" - }, "args": { "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { @@ -1215,8 +1536,8 @@ "type": "array" }, "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" + "type": "string", + "description": "The name of the driver's main class. The jar file that contains the class must be in the default CLASSPATH or specified in jar_file_uris." }, "archiveUris": { "description": "Optional. HCFS URIs of archives to be extracted in the working directory of Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and .zip.", @@ -1239,127 +1560,26 @@ "loggingConfig": { "$ref": "LoggingConfig", "description": "Optional. The runtime log config for job execution." - } - }, - "id": "SparkJob" - }, - "Job": { - "description": "A Cloud Dataproc job resource.", - "type": "object", - "properties": { - "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": { + "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. The labels to associate with this job. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a job.", - "type": "object" - }, - "driverOutputResourceUri": { - "description": "Output-only. A URI pointing to the location of the stdout of the job's driver program.", - "type": "string" - }, - "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." - }, - "sparkJob": { - "description": "Job is a Spark job.", - "$ref": "SparkJob" - }, - "statusHistory": { - "description": "Output-only. The previous job status.", - "items": { - "$ref": "JobStatus" - }, - "type": "array" - }, - "yarnApplications": { - "description": "Output-only. The collection of YARN applications spun up by this job.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "items": { - "$ref": "YarnApplication" - }, - "type": "array" - }, - "pysparkJob": { - "description": "Job is a Pyspark job.", - "$ref": "PySparkJob" - }, - "reference": { - "description": "Optional. The fully qualified reference to the job, which can be used to obtain the equivalent REST path of the job resource. If this property is not specified when a job is created, the server generates a \u003ccode\u003ejob_id\u003c/code\u003e.", - "$ref": "JobReference" - }, - "hadoopJob": { - "description": "Job is a Hadoop job.", - "$ref": "HadoopJob" - }, - "placement": { - "description": "Required. Job information, including how, when, and where to run the job.", - "$ref": "JobPlacement" - }, - "status": { - "$ref": "JobStatus", - "description": "Output-only. The job status. Additional application-specific status information may be contained in the \u003ccode\u003etype_job\u003c/code\u003e and \u003ccode\u003eyarn_applications\u003c/code\u003e fields." - }, - "driverControlFilesUri": { - "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" + } } }, - "id": "Job" + "id": "SparkJob" }, "JobStatus": { + "description": "Cloud Dataproc job status.", + "type": "object", "properties": { - "substate": { - "description": "Output-only. Additional state information, which includes status reported by the agent.", - "type": "string", - "enumDescriptions": [ - "", - "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" - ] - }, - "stateStartTime": { - "type": "string", - "format": "google-datetime", - "description": "Output-only. The time when this state was entered." - }, "details": { - "type": "string", - "description": "Output-only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e." + "description": "Output-only. Optional job state details, such as an error description if the state is \u003ccode\u003eERROR\u003c/code\u003e.", + "type": "string" }, "state": { - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "SETUP_DONE", - "RUNNING", - "CANCEL_PENDING", - "CANCEL_STARTED", - "CANCELLED", - "DONE", - "ERROR", - "ATTEMPT_FAILURE" - ], - "description": "Output-only. A state message specifying the overall job state.", "type": "string", "enumDescriptions": [ "The job state is unknown.", @@ -1372,142 +1592,100 @@ "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." - ] - } - }, - "id": "JobStatus", - "description": "Cloud Dataproc job status.", - "type": "object" - }, - "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." - }, - "ClusterOperationStatus": { - "description": "The status of the operation.", - "type": "object", - "properties": { - "innerState": { - "description": "Output-only. A message containing the detailed operation state.", - "type": "string" - }, - "stateStartTime": { - "format": "google-datetime", - "description": "Output-only. The time this state was entered.", - "type": "string" - }, - "details": { - "description": "Output-only.A message containing any operation metadata details.", - "type": "string" - }, - "state": { - "type": "string", - "enumDescriptions": [ - "Unused.", - "The operation has been created.", - "The operation is running.", - "The operation is done; either cancelled or completed." ], "enum": [ - "UNKNOWN", + "STATE_UNSPECIFIED", "PENDING", + "SETUP_DONE", "RUNNING", - "DONE" + "CANCEL_PENDING", + "CANCEL_STARTED", + "CANCELLED", + "DONE", + "ERROR", + "ATTEMPT_FAILURE" ], - "description": "Output-only. A message containing the operation state." - } - }, - "id": "ClusterOperationStatus" - }, - "YarnApplication": { - "description": "A YARN application created by a job. Application information is a subset of \u003ccode\u003eorg.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto\u003c/code\u003e.Beta Feature: This report is available for testing purposes only. It may be changed before final release.", - "type": "object", - "properties": { - "state": { + "description": "Output-only. A state message specifying the overall job state." + }, + "substate": { + "description": "Output-only. Additional state information, which includes status reported by the agent.", + "type": "string", "enumDescriptions": [ - "Status is unspecified.", - "Status is NEW.", - "Status is NEW_SAVING.", - "Status is SUBMITTED.", - "Status is ACCEPTED.", - "Status is RUNNING.", - "Status is FINISHED.", - "Status is FAILED.", - "Status is KILLED." + "", + "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": [ - "STATE_UNSPECIFIED", - "NEW", - "NEW_SAVING", + "UNSPECIFIED", "SUBMITTED", - "ACCEPTED", - "RUNNING", - "FINISHED", - "FAILED", - "KILLED" - ], - "description": "Required. The application state.", - "type": "string" + "QUEUED", + "STALE_STATUS" + ] }, - "name": { - "description": "Required. The application name.", + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only. The time when this state was entered.", + "type": "string" + } + }, + "id": "JobStatus" + }, + "ManagedGroupConfig": { + "type": "object", + "properties": { + "instanceTemplateName": { + "description": "Output-only. The name of the Instance Template used for the Managed Instance Group.", "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.", + "instanceGroupManagerName": { + "description": "Output-only. The name of the Instance Group Manager for this group.", "type": "string" - }, - "progress": { - "format": "float", - "description": "Required. The numerical progress of the application, from 1 to 100.", - "type": "number" } }, - "id": "YarnApplication" + "id": "ManagedGroupConfig", + "description": "Specifies the resources used to actively manage an instance group." }, - "QueryList": { + "ClusterOperationStatus": { + "id": "ClusterOperationStatus", + "description": "The status of the operation.", "type": "object", "properties": { - "queries": { - "items": { - "type": "string" - }, - "type": "array", - "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" + "innerState": { + "description": "Output-only. A message containing the detailed operation state.", + "type": "string" + }, + "stateStartTime": { + "format": "google-datetime", + "description": "Output-only. The time this state was entered.", + "type": "string" + }, + "details": { + "description": "Output-only.A message containing any operation metadata details.", + "type": "string" + }, + "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" + ] } - }, - "id": "QueryList", - "description": "A list of queries to run on a cluster." + } }, "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": { - "properties": { - "type": "object", - "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." - }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "items": { - "type": "string" - }, - "type": "array" - }, "fileUris": { "description": "Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.", "items": { @@ -1520,464 +1698,288 @@ "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.", "items": { "type": "string" }, - "type": "array", - "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" }, "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.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks." }, "loggingConfig": { - "description": "Optional. The runtime log config for job execution.", - "$ref": "LoggingConfig" - } - }, - "id": "HadoopJob" - }, - "DiagnoseClusterRequest": { - "id": "DiagnoseClusterRequest", - "description": "A request to collect cluster diagnostic information.", - "type": "object", - "properties": {} - }, - "DiskConfig": { - "properties": { - "numLocalSsds": { - "format": "int32", - "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.", - "type": "integer" - }, - "bootDiskSizeGb": { - "format": "int32", - "description": "Optional. Size in GB of the boot disk (default is 500GB).", - "type": "integer" - } - }, - "id": "DiskConfig", - "description": "Specifies the config of disk options for a group of VM instances.", - "type": "object" - }, - "ClusterOperationMetadata": { - "description": "Metadata describing the operation.", - "type": "object", - "properties": { - "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" - }, - "warnings": { - "description": "Output-only. Errors encountered during operation execution.", - "items": { - "type": "string" - }, - "type": "array" + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." }, - "labels": { + "properties": { "additionalProperties": { "type": "string" }, - "description": "Output-only. Labels associated with the operation", + "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" }, - "status": { - "$ref": "ClusterOperationStatus", - "description": "Output-only. Current operation status." - }, - "statusHistory": { - "description": "Output-only. The previous operation status.", + "args": { + "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", "items": { - "$ref": "ClusterOperationStatus" + "type": "string" }, "type": "array" } }, - "id": "ClusterOperationMetadata" + "id": "HadoopJob" }, - "HiveJob": { - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", + "QueryList": { + "description": "A list of queries to run on a cluster.", "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" - }, - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", - "type": "string" - }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs.", + "queries": { + "description": "Required. The queries to execute. You do not need to terminate a query with a semicolon. Multiple queries can be specified in one string by separating each with a semicolon. Here is an example of an Cloud Dataproc API snippet that uses a QueryList to specify a HiveJob:\n\"hiveJob\": {\n \"queryList\": {\n \"queries\": [\n \"query1\",\n \"query2\",\n \"query3;query4\",\n ]\n }\n}\n", "items": { "type": "string" }, "type": "array" - }, - "scriptVariables": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", - "type": "object" - }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names and values, used to configure Hive. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/hive/conf/hive-site.xml, and classes in user code.", - "type": "object" } }, - "id": "HiveJob" + "id": "QueryList" }, - "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" - }, - "WorkflowGraph": { - "description": "The workflow graph.", + "YarnApplication": { + "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", "properties": { - "nodes": { - "description": "Output-only The workflow nodes.", - "items": { - "$ref": "WorkflowNode" - }, - "type": "array" + "state": { + "type": "string", + "enumDescriptions": [ + "Status is unspecified.", + "Status is NEW.", + "Status is NEW_SAVING.", + "Status is SUBMITTED.", + "Status is ACCEPTED.", + "Status is RUNNING.", + "Status is FINISHED.", + "Status is FAILED.", + "Status is KILLED." + ], + "enum": [ + "STATE_UNSPECIFIED", + "NEW", + "NEW_SAVING", + "SUBMITTED", + "ACCEPTED", + "RUNNING", + "FINISHED", + "FAILED", + "KILLED" + ], + "description": "Required. The application state." + }, + "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": { + "format": "float", + "description": "Required. The numerical progress of the application, from 1 to 100.", + "type": "number" } - }, - "id": "WorkflowGraph" + } }, - "DiagnoseClusterResults": { - "description": "The location of diagnostic output.", + "DiagnoseClusterRequest": { + "id": "DiagnoseClusterRequest", + "description": "A request to collect cluster diagnostic information.", "type": "object", - "properties": { - "outputUri": { - "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", - "type": "string" - } - }, - "id": "DiagnoseClusterResults" + "properties": {} }, - "ClusterConfig": { + "DiskConfig": { + "description": "Specifies the config of disk options for a group of VM instances.", "type": "object", "properties": { - "softwareConfig": { - "$ref": "SoftwareConfig", - "description": "Optional. The config settings for software inside the cluster." - }, - "masterConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster." - }, - "secondaryWorkerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster." - }, - "initializationActions": { - "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's \u003ccode\u003erole\u003c/code\u003e metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", - "items": { - "$ref": "NodeInitializationAction" - }, - "type": "array" - }, - "configBucket": { - "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you.", - "type": "string" - }, - "workerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster." + "bootDiskSizeGb": { + "format": "int32", + "description": "Optional. Size in GB of the boot disk (default is 500GB).", + "type": "integer" }, - "gceClusterConfig": { - "$ref": "GceClusterConfig", - "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster." + "numLocalSsds": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "ClusterConfig", - "description": "The cluster config." + "id": "DiskConfig" }, - "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.", + "ClusterOperationMetadata": { "type": "object", "properties": { - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver and tasks.", + "statusHistory": { + "description": "Output-only. The previous operation status.", "items": { - "type": "string" + "$ref": "ClusterOperationStatus" }, "type": "array" }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." + "clusterName": { + "description": "Output-only. Name of the cluster for the operation.", + "type": "string" }, - "properties": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A mapping of property names to values, used to configure PySpark. Properties that conflict with values set by the Cloud Dataproc API may be overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf and classes in user code.", - "type": "object" + "clusterUuid": { + "description": "Output-only. Cluster UUID for the operation.", + "type": "string" }, - "args": { - "description": "Optional. The arguments to pass to the driver. Do not include arguments, such as --conf, that can be set as job properties, since a collision may occur that causes an incorrect job submission.", - "items": { - "type": "string" - }, - "type": "array" + "operationType": { + "description": "Output-only. The operation type.", + "type": "string" }, - "fileUris": { - "description": "Optional. HCFS URIs of files to be copied to the working directory of Python drivers and distributed tasks. Useful for naively parallel tasks.", - "items": { - "type": "string" - }, - "type": "array" + "description": { + "description": "Output-only. Short description of operation.", + "type": "string" }, - "pythonFileUris": { - "description": "Optional. HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.", + "warnings": { + "description": "Output-only. Errors encountered during operation execution.", "items": { "type": "string" }, "type": "array" }, - "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.", - "items": { + "labels": { + "description": "Output-only. Labels associated with the operation", + "type": "object", + "additionalProperties": { "type": "string" - }, - "type": "array" + } + }, + "status": { + "description": "Output-only. Current operation status.", + "$ref": "ClusterOperationStatus" } }, - "id": "PySparkJob" + "id": "ClusterOperationMetadata", + "description": "Metadata describing the operation." }, - "GceClusterConfig": { - "description": "Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster.", + "Empty": { + "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 {}.", + "type": "object" + }, + "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", "type": "object", "properties": { - "subnetworkUri": { - "description": "Optional. The Google Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0\nprojects/[project_id]/regions/us-east1/sub0\nsub0", - "type": "string" - }, - "networkUri": { - "description": "Optional. The Google Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks for more information).A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default\nprojects/[project_id]/regions/global/default\ndefault", + "queryFileUri": { + "description": "The HCFS URI of the script that contains Hive queries.", "type": "string" }, - "zoneUri": { - "type": "string", - "description": "Optional. The zone where the Google Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Cloud Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples:\nhttps://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]\nprojects/[project_id]/zones/[zone]\nus-central1-f" + "queryList": { + "description": "A list of queries.", + "$ref": "QueryList" }, - "metadata": { - "description": "The Google Compute Engine metadata entries to add to all instances (see Project and instance metadata (https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).", - "type": "object", - "additionalProperties": { + "jarFileUris": { + "items": { "type": "string" - } - }, - "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" + }, + "type": "array", + "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." }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in Google Compute Engine instances. The following base set of scopes is always included:\nhttps://www.googleapis.com/auth/cloud.useraccounts.readonly\nhttps://www.googleapis.com/auth/devstorage.read_write\nhttps://www.googleapis.com/auth/logging.writeIf no scopes are specified, the following defaults are also provided:\nhttps://www.googleapis.com/auth/bigquery\nhttps://www.googleapis.com/auth/bigtable.admin.table\nhttps://www.googleapis.com/auth/bigtable.data\nhttps://www.googleapis.com/auth/devstorage.full_control", - "items": { + "scriptVariables": { + "additionalProperties": { "type": "string" }, - "type": "array" + "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", + "type": "object" }, - "tags": { - "description": "The Google Compute Engine tags to add to all instances (see Tagging instances).", - "items": { + "properties": { + "additionalProperties": { "type": "string" }, - "type": "array" + "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" }, - "serviceAccount": { - "description": "Optional. The service account of the instances. Defaults to the default Google Compute Engine service account. Custom service accounts need permissions equivalent to the folloing IAM roles:\nroles/logging.logWriter\nroles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts for more information). Example: [account_id]@[project_id].iam.gserviceaccount.com", - "type": "string" + "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" } }, - "id": "GceClusterConfig" + "id": "HiveJob" }, - "AcceleratorConfig": { - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine).", + "DiagnoseClusterResults": { "type": "object", "properties": { - "acceleratorTypeUri": { - "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 * nvidia-tesla-k80", + "outputUri": { + "description": "Output-only. The Google Cloud Storage URI of the diagnostic output. The output report is a plain text file with a summary of collected diagnostics.", "type": "string" - }, - "acceleratorCount": { - "type": "integer", - "format": "int32", - "description": "The number of the accelerator cards of this type exposed to this instance." } }, - "id": "AcceleratorConfig" + "id": "DiagnoseClusterResults", + "description": "The location of diagnostic output." }, - "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.", + "WorkflowGraph": { + "description": "The workflow graph.", "type": "object", "properties": { - "hdfsMetrics": { - "description": "The HDFS metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "type": "string" - } - }, - "yarnMetrics": { - "type": "object", - "additionalProperties": { - "type": "string", - "format": "int64" - }, - "description": "The YARN metrics." - } - }, - "id": "ClusterMetrics" - }, - "LoggingConfig": { - "properties": { - "driverLogLevels": { - "type": "object", - "additionalProperties": { - "enum": [ - "LEVEL_UNSPECIFIED", - "ALL", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL", - "OFF" - ], - "type": "string" + "nodes": { + "description": "Output-only The workflow nodes.", + "items": { + "$ref": "WorkflowNode" }, - "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": "array" } }, - "id": "LoggingConfig", - "description": "The runtime logging config of the job.", - "type": "object" + "id": "WorkflowGraph" }, - "WorkflowNode": { - "description": "The workflow node.", + "ClusterConfig": { + "description": "The cluster config.", "type": "object", "properties": { - "jobId": { - "description": "Output-only The job id; populated after the node enters RUNNING state.", - "type": "string" - }, - "prerequisiteStepIds": { - "description": "Output-only Node's prerequisite nodes.", + "initializationActions": { + "description": "Optional. Commands to execute on each node after config is completed. By default, executables are run on master and all worker nodes. You can test a node's \u003ccode\u003erole\u003c/code\u003e metadata to run an executable on a master or worker node, as shown below using curl (you can also use wget):\nROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role)\nif [[ \"${ROLE}\" == 'Master' ]]; then\n ... master specific actions ...\nelse\n ... worker specific actions ...\nfi\n", "items": { - "type": "string" + "$ref": "NodeInitializationAction" }, "type": "array" }, - "state": { - "description": "Output-only The node state.", - "type": "string", - "enumDescriptions": [ - "", - "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" - ] - }, - "error": { + "configBucket": { "type": "string", - "description": "Output-only The error detail." + "description": "Optional. A Google Cloud Storage staging bucket used for sharing generated SSH keys and config. If you do not specify a staging bucket, Cloud Dataproc will determine an appropriate Cloud Storage location (US, ASIA, or EU) for your cluster's staging bucket according to the Google Compute Engine zone where your cluster is deployed, and then it will create and manage this project-level, per-location bucket for you." }, - "stepId": { - "description": "Output-only The name of the node.", - "type": "string" - } - }, - "id": "WorkflowNode" - }, - "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" + "workerConfig": { + "description": "Optional. The Google Compute Engine config settings for worker instances in a cluster.", + "$ref": "InstanceGroupConfig" }, - "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" + "gceClusterConfig": { + "description": "Required. The shared Google Compute Engine config settings for all instances in a cluster.", + "$ref": "GceClusterConfig" }, - "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" + "softwareConfig": { + "description": "Optional. The config settings for software inside the cluster.", + "$ref": "SoftwareConfig" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "masterConfig": { + "description": "Optional. The Google Compute Engine config settings for the master instance in a cluster.", + "$ref": "InstanceGroupConfig" }, - "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" + "secondaryWorkerConfig": { + "description": "Optional. The Google Compute Engine config settings for additional worker instances in a cluster.", + "$ref": "InstanceGroupConfig" } }, - "id": "Operation" + "id": "ClusterConfig" } }, "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": "v1beta2", @@ -2002,7 +2004,5 @@ "id": "dataproc:v1beta2", "documentationLink": "https://cloud.google.com/dataproc/", "revision": "20170712", - "title": "Google Cloud Dataproc API", - "discoveryVersion": "v1", - "ownerName": "Google" + "title": "Google Cloud Dataproc API" } diff --git a/DiscoveryJson/datastore_v1.json b/DiscoveryJson/datastore_v1.json index 060017f344..e5b3b2351b 100644 --- a/DiscoveryJson/datastore_v1.json +++ b/DiscoveryJson/datastore_v1.json @@ -1,1075 +1,1075 @@ { - "rootUrl": "https://datastore.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "datastore", - "batchPath": "batch", - "id": "datastore:v1", - "documentationLink": "https://cloud.google.com/datastore/", - "revision": "20170711", - "title": "Google Cloud Datastore API", - "ownerName": "Google", - "discoveryVersion": "v1", - "version_module": "True", - "resources": { - "projects": { - "methods": { - "allocateIds": { - "response": { - "$ref": "AllocateIdsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}:allocateIds", - "id": "datastore.projects.allocateIds", - "path": "v1/projects/{projectId}:allocateIds", - "request": { - "$ref": "AllocateIdsRequest" - }, - "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted." + "schemas": { + "Mutation": { + "description": "A mutation to apply to an entity.", + "type": "object", + "properties": { + "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." }, - "beginTransaction": { - "response": { - "$ref": "BeginTransactionResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:beginTransaction", - "id": "datastore.projects.beginTransaction", - "path": "v1/projects/{projectId}:beginTransaction", - "description": "Begins a new transaction.", - "request": { - "$ref": "BeginTransactionRequest" - } + "baseVersion": { + "format": "int64", + "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.", + "type": "string" }, - "commit": { - "id": "datastore.projects.commit", - "path": "v1/projects/{projectId}:commit", - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", - "response": { - "$ref": "CommitResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "parameters": { - "projectId": { - "location": "path", - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectId}:commit" + "insert": { + "$ref": "Entity", + "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." }, - "runQuery": { - "description": "Queries for entities.", - "request": { - "$ref": "RunQueryRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "RunQueryResponse" - }, - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:runQuery", - "path": "v1/projects/{projectId}:runQuery", - "id": "datastore.projects.runQuery" + "update": { + "$ref": "Entity", + "description": "The entity to update. The entity must already exist.\nMust have a complete key path." }, - "rollback": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "RollbackResponse" - }, - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true, - "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", - "description": "Rolls back a transaction.", - "request": { - "$ref": "RollbackRequest" - } + "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": { + "transaction": { + "format": "byte", + "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "type": "string" }, - "lookup": { - "description": "Looks up entities by key.", - "request": { - "$ref": "LookupRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" + "readConsistency": { + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." ], - "response": { - "$ref": "LookupResponse" - }, - "parameters": { - "projectId": { - "description": "The ID of the project against which to make the request.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" + "enum": [ + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" ], - "flatPath": "v1/projects/{projectId}:lookup", - "path": "v1/projects/{projectId}:lookup", - "id": "datastore.projects.lookup" + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", + "type": "string" } - } - } - }, - "parameters": { - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "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": "ReadOptions" }, - "key": { - "description": "API key. 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" + "RollbackResponse": { + "description": "The response for Datastore.Rollback.\n(an empty message).", + "type": "object", + "properties": {}, + "id": "RollbackResponse" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "MutationResult": { + "description": "The result of applying a mutation.", + "type": "object", + "properties": { + "version": { + "format": "int64", + "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.", + "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" + }, + "key": { + "description": "The automatically allocated key.\nSet only when the mutation allocated a key.", + "$ref": "Key" + } + }, + "id": "MutationResult" }, - "quotaUser": { - "description": "Available 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" + "GqlQuery": { + "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "type": "object", + "properties": { + "queryString": { + "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "type": "string" + }, + "positionalBindings": { + "description": "Numbered binding site @1 references the first numbered parameter,\neffectively using 1-based indexing, rather than the usual 0.\n\nFor each binding site numbered i in `query_string`, there must be an i-th\nnumbered parameter. The inverse must also be true.", + "items": { + "$ref": "GqlQueryParameter" + }, + "type": "array" + }, + "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" + } + }, + "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" + } + }, + "id": "GqlQuery" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - } - }, - "schemas": { - "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.", + "Filter": { + "description": "A holder for any type of filter.", "type": "object", "properties": { - "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": { - "format": "int64", - "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.", - "type": "string" + "propertyFilter": { + "description": "A filter on a property.", + "$ref": "PropertyFilter" }, - "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" + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." } }, - "id": "PathElement" + "id": "Filter" }, - "GqlQueryParameter": { - "description": "A binding parameter for a GQL query.", + "RunQueryRequest": { + "description": "The request for Datastore.RunQuery.", "type": "object", "properties": { - "cursor": { - "format": "byte", - "description": "A query cursor. Query cursors are returned in query\nresult batches.", - "type": "string" + "readOptions": { + "description": "The options for this query.", + "$ref": "ReadOptions" }, - "value": { - "description": "A value parameter.", - "$ref": "Value" + "query": { + "$ref": "Query", + "description": "The query to run." + }, + "gqlQuery": { + "description": "The GQL query to run.", + "$ref": "GqlQuery" + }, + "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." } }, - "id": "GqlQueryParameter" + "id": "RunQueryRequest" }, - "BeginTransactionResponse": { + "RollbackRequest": { + "description": "The request for Datastore.Rollback.", + "type": "object", "properties": { "transaction": { "format": "byte", - "description": "The transaction identifier (always present).", + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", "type": "string" } }, - "id": "BeginTransactionResponse", - "description": "The response for Datastore.BeginTransaction.", - "type": "object" + "id": "RollbackRequest" }, - "AllocateIdsRequest": { - "description": "The request for Datastore.AllocateIds.", + "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.", + "items": { + "$ref": "Filter" + }, + "type": "array" + }, + "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" + ] + } + }, + "id": "CompositeFilter" + }, + "AllocateIdsResponse": { + "description": "The response for Datastore.AllocateIds.", "type": "object", "properties": { "keys": { - "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", + "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", "items": { "$ref": "Key" }, "type": "array" } }, - "id": "AllocateIdsRequest" + "id": "AllocateIdsResponse" }, - "LookupResponse": { - "description": "The response for Datastore.Lookup.", + "Query": { + "description": "A query for entities.", "type": "object", "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.", + "kind": { + "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", "items": { - "$ref": "EntityResult" + "$ref": "KindExpression" }, "type": "array" }, - "found": { - "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", + "distinctOn": { + "description": "The properties to make distinct. The query results will contain the first\nresult for each distinct combination of values for the given properties\n(if empty, all results are returned).", "items": { - "$ref": "EntityResult" + "$ref": "PropertyReference" }, "type": "array" }, - "deferred": { - "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", "items": { - "$ref": "Key" + "$ref": "PropertyOrder" }, "type": "array" - } - }, - "id": "LookupResponse" - }, - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", - "type": "object", - "properties": { - "query": { - "$ref": "Query", - "description": "The parsed form of the `GqlQuery` from the request, if it was set." - }, - "batch": { - "description": "A batch of query results (always present).", - "$ref": "QueryResultBatch" - } - }, - "id": "RunQueryResponse" - }, - "PropertyOrder": { - "description": "The desired order for a specific property.", - "type": "object", - "properties": { - "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." - ] }, - "property": { - "description": "The property to order by.", - "$ref": "PropertyReference" - } - }, - "id": "PropertyOrder" - }, - "BeginTransactionRequest": { - "description": "The request for Datastore.BeginTransaction.", - "type": "object", - "properties": {}, - "id": "BeginTransactionRequest" - }, - "CommitRequest": { - "description": "The request for Datastore.Commit.", - "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.", + "projection": { + "description": "The projection to return. Defaults to returning all properties.", "items": { - "$ref": "Mutation" + "$ref": "Projection" }, "type": "array" }, - "transaction": { + "endCursor": { "format": "byte", - "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "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).", "type": "string" }, - "mode": { - "enum": [ - "MODE_UNSPECIFIED", - "TRANSACTIONAL", - "NON_TRANSACTIONAL" - ], - "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", - "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." - ] - } - }, - "id": "CommitRequest" - }, - "KindExpression": { - "description": "A representation of a kind.", - "type": "object", - "properties": { - "name": { - "description": "The name of the kind.", + "limit": { + "format": "int32", + "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.", + "type": "integer" + }, + "filter": { + "$ref": "Filter", + "description": "The filter to apply." + }, + "startCursor": { + "format": "byte", + "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).", "type": "string" + }, + "offset": { + "format": "int32", + "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", + "type": "integer" } }, - "id": "KindExpression" + "id": "Query" }, - "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.", + "PropertyFilter": { + "description": "A filter on a specific property.", "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.", - "items": { - "$ref": "PathElement" - }, - "type": "array" + "property": { + "description": "The property to filter by.", + "$ref": "PropertyReference" }, - "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" + "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" + }, + "value": { + "description": "The value to compare the property to.", + "$ref": "Value" } }, - "id": "Key" + "id": "PropertyFilter" }, - "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", + "EntityResult": { + "description": "The result of fetching an entity from Datastore.", "type": "object", "properties": { - "longitude": { - "format": "double", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "type": "number" + "entity": { + "description": "The resulting entity.", + "$ref": "Entity" }, - "latitude": { - "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "type": "number" - } - }, - "id": "LatLng" - }, - "PropertyReference": { - "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "cursor": { + "format": "byte", + "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", + "type": "string" + }, + "version": { + "format": "int64", + "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.", "type": "string" } }, - "id": "PropertyReference", - "description": "A reference to a property relative to the kind expressions.", - "type": "object" + "id": "EntityResult" }, - "Projection": { - "description": "A representation of a property in a projection.", + "Value": { + "description": "A message that can hold any of the supported value types and associated\nmetadata.", "type": "object", "properties": { - "property": { - "description": "The property to project.", - "$ref": "PropertyReference" + "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": { + "format": "double", + "description": "A double value.", + "type": "number" + }, + "timestampValue": { + "format": "google-datetime", + "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", + "type": "string" + }, + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "nullValue": { + "enumDescriptions": [ + "Null value." + ], + "enum": [ + "NULL_VALUE" + ], + "description": "A null value.", + "type": "string" + }, + "blobValue": { + "format": "byte", + "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.", + "type": "string" + }, + "meaning": { + "format": "int32", + "description": "The `meaning` field should only be populated for backwards compatibility.", + "type": "integer" + }, + "arrayValue": { + "description": "An array value.\nCannot contain another array value.\nA `Value` instance that sets field `array_value` must not set fields\n`meaning` or `exclude_from_indexes`.", + "$ref": "ArrayValue" + }, + "entityValue": { + "$ref": "Entity", + "description": "An entity value.\n\n- May have no key.\n- May have a key with an incomplete key path.\n- May have a reserved/read-only key." + }, + "geoPointValue": { + "description": "A geo point value representing a point on the surface of Earth.", + "$ref": "LatLng" + }, + "integerValue": { + "format": "int64", + "description": "An integer value.", + "type": "string" + }, + "keyValue": { + "description": "A key value.", + "$ref": "Key" } }, - "id": "Projection" + "id": "Value" }, - "ArrayValue": { - "description": "An array value.", + "CommitResponse": { + "description": "The response for Datastore.Commit.", "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.", + "mutationResults": { + "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", "items": { - "$ref": "Value" + "$ref": "MutationResult" }, "type": "array" - } - }, - "id": "ArrayValue" - }, - "Mutation": { - "properties": { - "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." - }, - "baseVersion": { - "format": "int64", - "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.", - "type": "string" }, - "insert": { - "$ref": "Entity", - "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." - }, - "update": { - "$ref": "Entity", - "description": "The entity to update. The entity must already exist.\nMust have a complete key path." - }, - "upsert": { - "$ref": "Entity", - "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete." + "indexUpdates": { + "format": "int32", + "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", + "type": "integer" } }, - "id": "Mutation", - "description": "A mutation to apply to an entity.", - "type": "object" + "id": "CommitResponse" }, - "ReadOptions": { - "description": "The options shared by read requests.", + "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": { - "transaction": { - "format": "byte", - "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "projectId": { + "description": "The ID of the project to which the entities belong.", "type": "string" }, - "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" - ] + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" } }, - "id": "ReadOptions" - }, - "RollbackResponse": { - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object", - "properties": {}, - "id": "RollbackResponse" + "id": "PartitionId" }, - "MutationResult": { - "description": "The result of applying a mutation.", + "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": { - "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" + "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" + } }, "key": { - "$ref": "Key", - "description": "The automatically allocated key.\nSet only when the mutation allocated a key." - }, - "version": { - "format": "int64", - "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.", - "type": "string" + "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" } }, - "id": "MutationResult" + "id": "Entity" }, - "GqlQuery": { - "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "QueryResultBatch": { + "description": "A batch of results produced by a query.", "type": "object", "properties": { - "queryString": { - "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "skippedCursor": { + "format": "byte", + "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", "type": "string" }, - "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.", + "skippedResults": { + "format": "int32", + "description": "The number of results skipped, typically because of an offset.", + "type": "integer" + }, + "entityResultType": { + "description": "The result type for every entity in `entity_results`.", + "type": "string", + "enumDescriptions": [ + "Unspecified. This value is never used.", + "The key and properties.", + "A projected subset of properties. The entity may have no key.", + "Only the key." + ], + "enum": [ + "RESULT_TYPE_UNSPECIFIED", + "FULL", + "PROJECTION", + "KEY_ONLY" + ] + }, + "entityResults": { + "description": "The results for this batch.", "items": { - "$ref": "GqlQueryParameter" + "$ref": "EntityResult" }, "type": "array" }, - "namedBindings": { - "additionalProperties": { - "$ref": "GqlQueryParameter" - }, - "description": "For each non-reserved named binding site in the query string, there must be\na named parameter with that name, but not necessarily the inverse.\n\nKey must match regex `A-Za-z_$*`, must not match regex\n`__.*__`, and must not be `\"\"`.", - "type": "object" + "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": { + "format": "byte", + "description": "A cursor that points to the position after the last result in the batch.", + "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" + "snapshotVersion": { + "format": "int64", + "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.", + "type": "string" } }, - "id": "GqlQuery" + "id": "QueryResultBatch" }, - "Filter": { - "description": "A holder for any type of filter.", + "LookupRequest": { + "description": "The request for Datastore.Lookup.", "type": "object", "properties": { - "compositeFilter": { - "description": "A composite filter.", - "$ref": "CompositeFilter" + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this lookup request." }, - "propertyFilter": { - "$ref": "PropertyFilter", - "description": "A filter on a property." + "keys": { + "description": "Keys of entities to look up.", + "items": { + "$ref": "Key" + }, + "type": "array" } }, - "id": "Filter" + "id": "LookupRequest" }, - "RunQueryRequest": { + "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": { - "gqlQuery": { - "description": "The GQL query to run.", - "$ref": "GqlQuery" - }, - "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" + "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" }, - "readOptions": { - "description": "The options for this query.", - "$ref": "ReadOptions" + "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" }, - "query": { - "description": "The query to run.", - "$ref": "Query" + "id": { + "format": "int64", + "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.", + "type": "string" } }, - "id": "RunQueryRequest", - "description": "The request for Datastore.RunQuery.", - "type": "object" + "id": "PathElement" }, - "RollbackRequest": { - "description": "The request for Datastore.Rollback.", + "GqlQueryParameter": { + "description": "A binding parameter for a GQL query.", "type": "object", "properties": { - "transaction": { + "cursor": { "format": "byte", - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", + "description": "A query cursor. Query cursors are returned in query\nresult batches.", "type": "string" + }, + "value": { + "description": "A value parameter.", + "$ref": "Value" } }, - "id": "RollbackRequest" + "id": "GqlQueryParameter" }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", + "BeginTransactionResponse": { + "description": "The response for Datastore.BeginTransaction.", "type": "object", "properties": { - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", - "items": { - "$ref": "Filter" - }, - "type": "array" - }, - "op": { - "description": "The operator for combining multiple filters.", - "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" - ] + "transaction": { + "format": "byte", + "description": "The transaction identifier (always present).", + "type": "string" } }, - "id": "CompositeFilter" + "id": "BeginTransactionResponse" }, - "AllocateIdsResponse": { - "description": "The response for Datastore.AllocateIds.", + "RunQueryResponse": { + "description": "The response for Datastore.RunQuery.", "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.", - "items": { - "$ref": "Key" - }, - "type": "array" + "query": { + "$ref": "Query", + "description": "The parsed form of the `GqlQuery` from the request, if it was set." + }, + "batch": { + "description": "A batch of query results (always present).", + "$ref": "QueryResultBatch" } }, - "id": "AllocateIdsResponse" + "id": "RunQueryResponse" }, - "Query": { - "description": "A query for entities.", + "LookupResponse": { + "description": "The response for Datastore.Lookup.", "type": "object", "properties": { - "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.", "items": { - "$ref": "Projection" + "$ref": "EntityResult" }, "type": "array" }, - "endCursor": { - "format": "byte", - "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).", - "type": "string" - }, - "limit": { - "format": "int32", - "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.", - "type": "integer" - }, - "filter": { - "$ref": "Filter", - "description": "The filter to apply." - }, - "offset": { - "format": "int32", - "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", - "type": "integer" - }, - "startCursor": { - "format": "byte", - "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).", - "type": "string" - }, - "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "found": { + "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", "items": { - "$ref": "KindExpression" + "$ref": "EntityResult" }, "type": "array" }, - "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).", + "deferred": { + "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", "items": { - "$ref": "PropertyReference" + "$ref": "Key" }, "type": "array" - }, - "order": { - "description": "The order to apply to the query results (if empty, order is unspecified).", + } + }, + "id": "LookupResponse" + }, + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", + "type": "object", + "properties": { + "keys": { + "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", "items": { - "$ref": "PropertyOrder" + "$ref": "Key" }, "type": "array" } }, - "id": "Query" + "id": "AllocateIdsRequest" }, - "PropertyFilter": { + "PropertyOrder": { + "description": "The desired order for a specific property.", + "type": "object", "properties": { - "value": { - "description": "The value to compare the property to.", - "$ref": "Value" - }, - "property": { - "description": "The property to filter by.", - "$ref": "PropertyReference" - }, - "op": { + "direction": { "enumDescriptions": [ "Unspecified. This value must not be used.", - "Less than.", - "Less than or equal.", - "Greater than.", - "Greater than or equal.", - "Equal.", - "Has ancestor." + "Ascending.", + "Descending." ], "enum": [ - "OPERATOR_UNSPECIFIED", - "LESS_THAN", - "LESS_THAN_OR_EQUAL", - "GREATER_THAN", - "GREATER_THAN_OR_EQUAL", - "EQUAL", - "HAS_ANCESTOR" + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" ], - "description": "The operator to filter by.", + "description": "The direction to order by. Defaults to `ASCENDING`.", "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to order by." } }, - "id": "PropertyFilter", - "description": "A filter on a specific property.", - "type": "object" + "id": "PropertyOrder" }, - "EntityResult": { - "description": "The result of fetching an entity from Datastore.", + "BeginTransactionRequest": { + "description": "The request for Datastore.BeginTransaction.", "type": "object", - "properties": { - "cursor": { - "format": "byte", - "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", - "type": "string" - }, - "version": { - "format": "int64", - "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.", - "type": "string" - }, - "entity": { - "description": "The resulting entity.", - "$ref": "Entity" - } - }, - "id": "EntityResult" + "properties": {}, + "id": "BeginTransactionRequest" }, - "CommitResponse": { + "CommitRequest": { + "description": "The request for Datastore.Commit.", + "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.", + "mode": { + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", + "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." + ], + "enum": [ + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" + ] + }, + "mutations": { + "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", "items": { - "$ref": "MutationResult" + "$ref": "Mutation" }, "type": "array" }, - "indexUpdates": { - "format": "int32", - "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", - "type": "integer" + "transaction": { + "format": "byte", + "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "type": "string" } }, - "id": "CommitResponse", - "description": "The response for Datastore.Commit.", - "type": "object" + "id": "CommitRequest" }, - "Value": { - "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "KindExpression": { + "description": "A representation of a kind.", "type": "object", "properties": { - "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" - }, - "integerValue": { - "format": "int64", - "description": "An integer value.", - "type": "string" - }, - "keyValue": { - "$ref": "Key", - "description": "A key value." - }, - "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.", + "name": { + "description": "The name of the kind.", "type": "string" - }, - "excludeFromIndexes": { - "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", - "type": "boolean" - }, - "doubleValue": { + } + }, + "id": "KindExpression" + }, + "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", + "type": "object", + "properties": { + "latitude": { "format": "double", - "description": "A double value.", + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "type": "number" }, - "timestampValue": { - "format": "google-datetime", - "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", - "type": "string" - }, - "nullValue": { - "enumDescriptions": [ - "Null value." - ], - "enum": [ - "NULL_VALUE" - ], - "description": "A null value.", - "type": "string" - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "blobValue": { - "format": "byte", - "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.", - "type": "string" - }, - "meaning": { - "format": "int32", - "description": "The `meaning` field should only be populated for backwards compatibility.", - "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" + "longitude": { + "format": "double", + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "type": "number" } }, - "id": "Value" + "id": "LatLng" }, - "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.", + "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": { - "projectId": { - "description": "The ID of the project to which the entities belong.", - "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." }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", + "items": { + "$ref": "PathElement" + }, + "type": "array" + } + }, + "id": "Key" + }, + "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": "PartitionId" + "id": "PropertyReference" }, - "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.", + "Projection": { + "description": "A representation of a property in a projection.", "type": "object", "properties": { - "key": { - "$ref": "Key", - "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key." - }, - "properties": { - "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" - } + "property": { + "description": "The property to project.", + "$ref": "PropertyReference" } }, - "id": "Entity" + "id": "Projection" }, - "QueryResultBatch": { - "description": "A batch of results produced by a query.", + "ArrayValue": { + "description": "An array value.", "type": "object", "properties": { - "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": { - "format": "byte", - "description": "A cursor that points to the position after the last result in the batch.", - "type": "string" - }, - "snapshotVersion": { - "format": "int64", - "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.", - "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.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "id": "ArrayValue" + } + }, + "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://datastore.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/datastore": { + "description": "View and manage your Google Cloud Datastore data" }, - "skippedCursor": { - "format": "byte", - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", - "type": "string" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "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", + "name": "datastore", + "batchPath": "batch", + "id": "datastore:v1", + "documentationLink": "https://cloud.google.com/datastore/", + "revision": "20170711", + "title": "Google Cloud Datastore API", + "discoveryVersion": "v1", + "ownerName": "Google", + "version_module": "True", + "resources": { + "projects": { + "methods": { + "beginTransaction": { + "flatPath": "v1/projects/{projectId}:beginTransaction", + "id": "datastore.projects.beginTransaction", + "path": "v1/projects/{projectId}:beginTransaction", + "request": { + "$ref": "BeginTransactionRequest" + }, + "description": "Begins a new transaction.", + "response": { + "$ref": "BeginTransactionResponse" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The ID of the project against which to make the request.", + "type": "string", + "required": true + } + } }, - "skippedResults": { - "format": "int32", - "description": "The number of results skipped, typically because of an offset.", - "type": "integer" + "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.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], + "flatPath": "v1/projects/{projectId}:commit", + "path": "v1/projects/{projectId}:commit", + "id": "datastore.projects.commit" }, - "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." + "runQuery": { + "flatPath": "v1/projects/{projectId}:runQuery", + "id": "datastore.projects.runQuery", + "path": "v1/projects/{projectId}:runQuery", + "request": { + "$ref": "RunQueryRequest" + }, + "description": "Queries for entities.", + "response": { + "$ref": "RunQueryResponse" + }, + "parameterOrder": [ + "projectId" ], - "enum": [ - "RESULT_TYPE_UNSPECIFIED", - "FULL", - "PROJECTION", - "KEY_ONLY" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" ], - "description": "The result type for every entity in `entity_results`.", - "type": "string" + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "type": "string", + "required": true, + "location": "path" + } + } }, - "entityResults": { - "description": "The results for this batch.", - "items": { - "$ref": "EntityResult" + "rollback": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "RollbackResponse" }, - "type": "array" - } - }, - "id": "QueryResultBatch" - }, - "LookupRequest": { - "description": "The request for Datastore.Lookup.", - "type": "object", - "properties": { - "readOptions": { - "description": "The options for this lookup request.", - "$ref": "ReadOptions" + "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.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/projects/{projectId}:rollback", + "path": "v1/projects/{projectId}:rollback", + "id": "datastore.projects.rollback", + "request": { + "$ref": "RollbackRequest" + }, + "description": "Rolls back a transaction." }, - "keys": { - "description": "Keys of entities to look up.", - "items": { - "$ref": "Key" + "lookup": { + "description": "Looks up entities by key.", + "request": { + "$ref": "LookupRequest" }, - "type": "array" - } - }, - "id": "LookupRequest" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://datastore.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "httpMethod": "POST", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "LookupResponse" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "The ID of the project against which to make the request.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], + "flatPath": "v1/projects/{projectId}:lookup", + "path": "v1/projects/{projectId}:lookup", + "id": "datastore.projects.lookup" }, - "https://www.googleapis.com/auth/datastore": { - "description": "View and manage your Google Cloud Datastore data" + "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" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], + "flatPath": "v1/projects/{projectId}:allocateIds", + "id": "datastore.projects.allocateIds", + "path": "v1/projects/{projectId}:allocateIds" } } } }, - "servicePath": "", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", - "kind": "discovery#restDescription" + "parameters": { + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" + }, + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" + }, + "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": { + "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": { + "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.", + "default": "true", + "type": "boolean" + } + } } diff --git a/DiscoveryJson/datastore_v1beta3.json b/DiscoveryJson/datastore_v1beta3.json index 4b14aedd4b..89c8e86070 100644 --- a/DiscoveryJson/datastore_v1beta3.json +++ b/DiscoveryJson/datastore_v1beta3.json @@ -1,53 +1,27 @@ { - "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": "v1beta3", - "baseUrl": "https://datastore.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/datastore": { - "description": "View and manage your Google Cloud Datastore data" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "kind": "discovery#restDescription", - "servicePath": "", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", - "rootUrl": "https://datastore.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "datastore", "batchPath": "batch", - "revision": "20170711", - "documentationLink": "https://cloud.google.com/datastore/", "id": "datastore:v1beta3", + "documentationLink": "https://cloud.google.com/datastore/", + "revision": "20170711", "title": "Google Cloud Datastore API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "version_module": "True", "resources": { "projects": { "methods": { - "allocateIds": { + "runQuery": { + "description": "Queries for entities.", + "request": { + "$ref": "RunQueryRequest" + }, "httpMethod": "POST", "parameterOrder": [ "projectId" ], "response": { - "$ref": "AllocateIdsResponse" + "$ref": "RunQueryResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "parameters": { "projectId": { "location": "path", @@ -56,56 +30,22 @@ "required": true } }, - "flatPath": "v1beta3/projects/{projectId}:allocateIds", - "path": "v1beta3/projects/{projectId}:allocateIds", - "id": "datastore.projects.allocateIds", - "request": { - "$ref": "AllocateIdsRequest" - }, - "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted." - }, - "commit": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "CommitResponse" - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "parameters": { - "projectId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the project against which to make the request." - } - }, - "flatPath": "v1beta3/projects/{projectId}:commit", - "path": "v1beta3/projects/{projectId}:commit", - "id": "datastore.projects.commit", - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities." + "flatPath": "v1beta3/projects/{projectId}:runQuery", + "path": "v1beta3/projects/{projectId}:runQuery", + "id": "datastore.projects.runQuery" }, - "beginTransaction": { - "path": "v1beta3/projects/{projectId}:beginTransaction", - "id": "datastore.projects.beginTransaction", - "description": "Begins a new transaction.", - "request": { - "$ref": "BeginTransactionRequest" + "rollback": { + "response": { + "$ref": "RollbackResponse" }, - "httpMethod": "POST", "parameterOrder": [ "projectId" ], - "response": { - "$ref": "BeginTransactionResponse" - }, + "httpMethod": "POST", "parameters": { "projectId": { "description": "The ID of the project against which to make the request.", @@ -118,16 +58,30 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta3/projects/{projectId}:beginTransaction" + "flatPath": "v1beta3/projects/{projectId}:rollback", + "id": "datastore.projects.rollback", + "path": "v1beta3/projects/{projectId}:rollback", + "description": "Rolls back a transaction.", + "request": { + "$ref": "RollbackRequest" + } }, - "runQuery": { + "lookup": { + "request": { + "$ref": "LookupRequest" + }, + "description": "Looks up entities by key.", "response": { - "$ref": "RunQueryResponse" + "$ref": "LookupResponse" }, "parameterOrder": [ "projectId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "parameters": { "projectId": { "location": "path", @@ -136,30 +90,50 @@ "required": true } }, + "flatPath": "v1beta3/projects/{projectId}:lookup", + "id": "datastore.projects.lookup", + "path": "v1beta3/projects/{projectId}:lookup" + }, + "allocateIds": { + "request": { + "$ref": "AllocateIdsRequest" + }, + "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted.", + "response": { + "$ref": "AllocateIdsResponse" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", "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", - "description": "Queries for entities.", - "request": { - "$ref": "RunQueryRequest" - } + "parameters": { + "projectId": { + "description": "The ID of the project against which to make the request.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1beta3/projects/{projectId}:allocateIds", + "id": "datastore.projects.allocateIds", + "path": "v1beta3/projects/{projectId}:allocateIds" }, - "rollback": { - "description": "Rolls back a transaction.", + "commit": { + "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", "request": { - "$ref": "RollbackRequest" - }, - "response": { - "$ref": "RollbackResponse" + "$ref": "CommitRequest" }, + "httpMethod": "POST", "parameterOrder": [ "projectId" ], - "httpMethod": "POST", + "response": { + "$ref": "CommitResponse" + }, "parameters": { "projectId": { "location": "path", @@ -172,20 +146,13 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta3/projects/{projectId}:rollback", - "id": "datastore.projects.rollback", - "path": "v1beta3/projects/{projectId}:rollback" + "flatPath": "v1beta3/projects/{projectId}:commit", + "path": "v1beta3/projects/{projectId}:commit", + "id": "datastore.projects.commit" }, - "lookup": { - "flatPath": "v1beta3/projects/{projectId}:lookup", - "id": "datastore.projects.lookup", - "path": "v1beta3/projects/{projectId}:lookup", - "description": "Looks up entities by key.", - "request": { - "$ref": "LookupRequest" - }, + "beginTransaction": { "response": { - "$ref": "LookupResponse" + "$ref": "BeginTransactionResponse" }, "parameterOrder": [ "projectId" @@ -193,883 +160,916 @@ "httpMethod": "POST", "parameters": { "projectId": { - "location": "path", "description": "The ID of the project against which to make the request.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" - ] + ], + "flatPath": "v1beta3/projects/{projectId}:beginTransaction", + "id": "datastore.projects.beginTransaction", + "path": "v1beta3/projects/{projectId}:beginTransaction", + "description": "Begins a new transaction.", + "request": { + "$ref": "BeginTransactionRequest" + } } } } }, "parameters": { - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", + "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" }, - "bearer_token": { + "key": { "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" + }, + "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.", + "default": "true", + "type": "boolean" + }, "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": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" + }, "prettyPrint": { - "description": "Returns response with indentations and line breaks.", "default": "true", "type": "boolean", - "location": "query" - }, - "uploadType": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "description": "Returns response with indentations and line breaks." }, "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" - ], + "uploadType": { "location": "query", - "enum": [ - "1", - "2" - ] + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, "callback": { - "type": "string", "location": "query", - "description": "JSONP" + "description": "JSONP", + "type": "string" }, - "alt": { - "description": "Data format for response.", - "default": "json", + "$.xgafv": { "enum": [ - "json", - "media", - "proto" + "1", + "2" ], + "description": "V1 error format.", "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" ], "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "quotaUser": { - "description": "Available 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": { - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", - "type": "object", - "properties": { - "batch": { - "description": "A batch of query results (always present).", - "$ref": "QueryResultBatch" - }, - "query": { - "description": "The parsed form of the `GqlQuery` from the request, if it was set.", - "$ref": "Query" - } - }, - "id": "RunQueryResponse" - }, - "LookupResponse": { - "description": "The response for Datastore.Lookup.", + "CompositeFilter": { + "description": "A filter that merges multiple other filters using the given operator.", "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.", - "items": { - "$ref": "Key" - }, - "type": "array" - }, - "missing": { - "description": "Entities not found as `ResultType.KEY_ONLY` entities. The order of results\nin this field is undefined and has no relation to the order of the keys\nin the input.", + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", "items": { - "$ref": "EntityResult" + "$ref": "Filter" }, "type": "array" }, - "found": { - "description": "Entities found as `ResultType.FULL` entities. The order of results in this\nfield is undefined and has no relation to the order of the keys in the\ninput.", - "items": { - "$ref": "EntityResult" - }, - "type": "array" + "op": { + "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" + ], + "description": "The operator for combining multiple filters." } }, - "id": "LookupResponse" + "id": "CompositeFilter" }, - "AllocateIdsRequest": { - "description": "The request for Datastore.AllocateIds.", + "AllocateIdsResponse": { + "description": "The response for Datastore.AllocateIds.", "type": "object", "properties": { "keys": { - "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", + "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", "items": { "$ref": "Key" }, "type": "array" } }, - "id": "AllocateIdsRequest" - }, - "BeginTransactionRequest": { - "description": "The request for Datastore.BeginTransaction.", - "type": "object", - "properties": {}, - "id": "BeginTransactionRequest" + "id": "AllocateIdsResponse" }, - "CommitRequest": { - "description": "The request for Datastore.Commit.", + "Query": { + "description": "A query for entities.", "type": "object", "properties": { - "transaction": { + "offset": { + "format": "int32", + "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", + "type": "integer" + }, + "startCursor": { "format": "byte", - "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "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).", "type": "string" }, - "mode": { - "enum": [ - "MODE_UNSPECIFIED", - "TRANSACTIONAL", - "NON_TRANSACTIONAL" - ], - "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", - "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." - ] + "kind": { + "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "items": { + "$ref": "KindExpression" + }, + "type": "array" }, - "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.", + "distinctOn": { "items": { - "$ref": "Mutation" + "$ref": "PropertyReference" + }, + "type": "array", + "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)." + }, + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", + "items": { + "$ref": "PropertyOrder" + }, + "type": "array" + }, + "projection": { + "description": "The projection to return. Defaults to returning all properties.", + "items": { + "$ref": "Projection" }, "type": "array" + }, + "endCursor": { + "type": "string", + "format": "byte", + "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)." + }, + "limit": { + "format": "int32", + "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.", + "type": "integer" + }, + "filter": { + "$ref": "Filter", + "description": "The filter to apply." } }, - "id": "CommitRequest" + "id": "Query" }, - "PropertyOrder": { - "description": "The desired order for a specific property.", + "PropertyFilter": { + "description": "A filter on a specific property.", "type": "object", "properties": { - "direction": { - "description": "The direction to order by. Defaults to `ASCENDING`.", - "type": "string", + "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.", - "Ascending.", - "Descending." + "Less than.", + "Less than or equal.", + "Greater than.", + "Greater than or equal.", + "Equal.", + "Has ancestor." ], "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ] - }, - "property": { - "$ref": "PropertyReference", - "description": "The property to order by." + "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": "PropertyOrder" + "id": "PropertyFilter" }, - "KindExpression": { - "description": "A representation of a kind.", + "EntityResult": { "type": "object", "properties": { - "name": { - "description": "The name of the kind.", + "cursor": { + "format": "byte", + "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", "type": "string" + }, + "version": { + "type": "string", + "format": "int64", + "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." + }, + "entity": { + "$ref": "Entity", + "description": "The resulting entity." } }, - "id": "KindExpression" + "id": "EntityResult", + "description": "The result of fetching an entity from Datastore." }, - "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", - "type": "object", + "Value": { "properties": { - "longitude": { - "format": "double", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "type": "number" + "excludeFromIndexes": { + "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", + "type": "boolean" }, - "latitude": { + "doubleValue": { "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "description": "A double value.", "type": "number" + }, + "timestampValue": { + "format": "google-datetime", + "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", + "type": "string" + }, + "nullValue": { + "enumDescriptions": [ + "Null value." + ], + "enum": [ + "NULL_VALUE" + ], + "description": "A null value.", + "type": "string" + }, + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "blobValue": { + "format": "byte", + "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.", + "type": "string" + }, + "meaning": { + "format": "int32", + "description": "The `meaning` field should only be populated for backwards compatibility.", + "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": { + "description": "A key value.", + "$ref": "Key" + }, + "integerValue": { + "format": "int64", + "description": "An integer value.", + "type": "string" + }, + "stringValue": { + "description": "A UTF-8 encoded string value.\nWhen `exclude_from_indexes` is false (it is indexed) , may have at most 1500 bytes.\nOtherwise, may be set to at least 1,000,000 bytes.", + "type": "string" } }, - "id": "LatLng" + "id": "Value", + "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "type": "object" }, - "Key": { + "CommitResponse": { + "description": "The response for Datastore.Commit.", "type": "object", "properties": { - "partitionId": { - "$ref": "PartitionId", - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition." - }, - "path": { - "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", + "mutationResults": { + "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", "items": { - "$ref": "PathElement" + "$ref": "MutationResult" }, "type": "array" + }, + "indexUpdates": { + "format": "int32", + "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", + "type": "integer" } }, - "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." + "id": "CommitResponse" }, - "PropertyReference": { - "description": "A reference to a property relative to the kind expressions.", + "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": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "projectId": { + "type": "string", + "description": "The ID of the project to which the entities belong." + }, + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", "type": "string" } }, - "id": "PropertyReference" + "id": "PartitionId" }, - "ArrayValue": { - "description": "An array value.", - "type": "object", + "Entity": { "properties": { - "values": { - "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values.", - "items": { + "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" }, - "type": "array" - } - }, - "id": "ArrayValue" - }, - "Projection": { - "description": "A representation of a property in a projection.", - "type": "object", - "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to project." + "description": "The entity's properties.\nThe map's keys are property names.\nA property name matching regex `__.*__` is reserved.\nA reserved property name is forbidden in certain documented contexts.\nThe name must not contain more than 500 characters.\nThe name cannot be `\"\"`.", + "type": "object" } }, - "id": "Projection" + "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" }, - "Mutation": { - "description": "A mutation to apply to an entity.", + "QueryResultBatch": { + "description": "A batch of results produced by a query.", "type": "object", "properties": { - "update": { - "$ref": "Entity", - "description": "The entity to update. The entity must already exist.\nMust have a complete key path." + "entityResults": { + "description": "The results for this batch.", + "items": { + "$ref": "EntityResult" + }, + "type": "array" }, - "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" + "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" }, - "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" + "endCursor": { + "format": "byte", + "description": "A cursor that points to the position after the last result in the batch.", + "type": "string" }, - "baseVersion": { + "snapshotVersion": { "format": "int64", - "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.", + "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.", "type": "string" }, - "insert": { - "$ref": "Entity", - "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete." - } - }, - "id": "Mutation" - }, - "ReadOptions": { - "description": "The options shared by read requests.", - "type": "object", - "properties": { - "transaction": { + "skippedCursor": { "format": "byte", - "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", "type": "string" }, - "readConsistency": { + "skippedResults": { + "format": "int32", + "description": "The number of results skipped, typically because of an offset.", + "type": "integer" + }, + "entityResultType": { + "description": "The result type for every entity in `entity_results`.", + "type": "string", "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Strong consistency.", - "Eventual consistency." + "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": [ - "READ_CONSISTENCY_UNSPECIFIED", - "STRONG", - "EVENTUAL" - ], - "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", - "type": "string" - } - }, - "id": "ReadOptions" - }, - "RollbackResponse": { - "properties": {}, - "id": "RollbackResponse", - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object" - }, - "MutationResult": { - "description": "The result of applying a mutation.", - "type": "object", - "properties": { - "conflictDetected": { - "description": "Whether a conflict was detected for this mutation. Always false when a\nconflict detection strategy field is not set in the mutation.", - "type": "boolean" - }, - "key": { - "$ref": "Key", - "description": "The automatically allocated key.\nSet only when the mutation allocated a key." - }, - "version": { - "format": "int64", - "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.", - "type": "string" + "RESULT_TYPE_UNSPECIFIED", + "FULL", + "PROJECTION", + "KEY_ONLY" + ] } }, - "id": "MutationResult" + "id": "QueryResultBatch" }, - "GqlQuery": { - "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "LookupRequest": { + "description": "The request for Datastore.Lookup.", "type": "object", "properties": { - "queryString": { - "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "string" + "readOptions": { + "description": "The options for this lookup request.", + "$ref": "ReadOptions" }, - "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.", + "keys": { + "description": "Keys of entities to look up.", "items": { - "$ref": "GqlQueryParameter" + "$ref": "Key" }, "type": "array" - }, - "namedBindings": { - "additionalProperties": { - "$ref": "GqlQueryParameter" - }, - "description": "For each non-reserved named binding site in the query string, there must be\na named parameter with that name, but not necessarily the inverse.\n\nKey must match regex `A-Za-z_$*`, must not match regex\n`__.*__`, and must not be `\"\"`.", - "type": "object" - }, - "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" } }, - "id": "GqlQuery" + "id": "LookupRequest" }, - "Filter": { - "description": "A holder for any type of filter.", + "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": { - "propertyFilter": { - "description": "A filter on a property.", - "$ref": "PropertyFilter" + "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" }, - "compositeFilter": { - "description": "A composite filter.", - "$ref": "CompositeFilter" + "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": { + "format": "int64", + "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.", + "type": "string" } }, - "id": "Filter" + "id": "PathElement" }, - "RollbackRequest": { - "description": "The request for Datastore.Rollback.", + "GqlQueryParameter": { + "description": "A binding parameter for a GQL query.", "type": "object", "properties": { - "transaction": { + "cursor": { "format": "byte", - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", + "description": "A query cursor. Query cursors are returned in query\nresult batches.", "type": "string" + }, + "value": { + "description": "A value parameter.", + "$ref": "Value" } }, - "id": "RollbackRequest" + "id": "GqlQueryParameter" }, - "RunQueryRequest": { - "description": "The request for Datastore.RunQuery.", + "BeginTransactionResponse": { + "description": "The response for Datastore.BeginTransaction.", "type": "object", "properties": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this query." - }, - "query": { - "$ref": "Query", - "description": "The query to run." - }, - "gqlQuery": { - "description": "The GQL query to run.", - "$ref": "GqlQuery" - }, - "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." + "transaction": { + "format": "byte", + "description": "The transaction identifier (always present).", + "type": "string" } }, - "id": "RunQueryRequest" + "id": "BeginTransactionResponse" }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", + "RunQueryResponse": { + "description": "The response for Datastore.RunQuery.", "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" + "query": { + "$ref": "Query", + "description": "The parsed form of the `GqlQuery` from the request, if it was set." }, - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", - "items": { - "$ref": "Filter" - }, - "type": "array" + "batch": { + "$ref": "QueryResultBatch", + "description": "A batch of query results (always present)." } }, - "id": "CompositeFilter" + "id": "RunQueryResponse" }, - "AllocateIdsResponse": { - "description": "The response for Datastore.AllocateIds.", + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", "type": "object", "properties": { "keys": { - "description": "The keys specified in the request (in the same order), each with\nits key path completed with a newly allocated ID.", + "description": "A list of keys with incomplete key paths for which to allocate IDs.\nNo key may be reserved/read-only.", "items": { "$ref": "Key" }, "type": "array" } }, - "id": "AllocateIdsResponse" + "id": "AllocateIdsRequest" }, - "Query": { - "id": "Query", - "description": "A query for entities.", + "LookupResponse": { + "description": "The response for Datastore.Lookup.", "type": "object", "properties": { - "offset": { - "format": "int32", - "description": "The number of results to skip. Applies before limit, but after all other\nconstraints. Optional. Must be \u003e= 0 if specified.", - "type": "integer" - }, - "startCursor": { - "format": "byte", - "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).", - "type": "string" - }, - "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", - "items": { - "$ref": "KindExpression" - }, - "type": "array" - }, - "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).", + "deferred": { + "description": "A list of keys that were not looked up due to resource constraints. The\norder of results in this field is undefined and has no relation to the\norder of the keys in the input.", "items": { - "$ref": "PropertyReference" + "$ref": "Key" }, "type": "array" }, - "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.", "items": { - "$ref": "PropertyOrder" + "$ref": "EntityResult" }, "type": "array" }, - "projection": { - "description": "The projection to return. Defaults to returning all 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.", "items": { - "$ref": "Projection" + "$ref": "EntityResult" }, "type": "array" - }, - "endCursor": { - "format": "byte", - "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).", - "type": "string" - }, - "filter": { - "description": "The filter to apply.", - "$ref": "Filter" - }, - "limit": { - "format": "int32", - "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.", - "type": "integer" } - } + }, + "id": "LookupResponse" }, - "PropertyFilter": { - "description": "A filter on a specific property.", + "PropertyOrder": { + "description": "The desired order for a specific property.", "type": "object", "properties": { - "value": { - "$ref": "Value", - "description": "The value to compare the property to." - }, - "property": { - "$ref": "PropertyReference", - "description": "The property to filter by." - }, - "op": { - "type": "string", + "direction": { "enumDescriptions": [ "Unspecified. This value must not be used.", - "Less than.", - "Less than or equal.", - "Greater than.", - "Greater than or equal.", - "Equal.", - "Has ancestor." + "Ascending.", + "Descending." ], "enum": [ - "OPERATOR_UNSPECIFIED", - "LESS_THAN", - "LESS_THAN_OR_EQUAL", - "GREATER_THAN", - "GREATER_THAN_OR_EQUAL", - "EQUAL", - "HAS_ANCESTOR" + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" ], - "description": "The operator to filter by." + "description": "The direction to order by. Defaults to `ASCENDING`.", + "type": "string" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to order by." } }, - "id": "PropertyFilter" + "id": "PropertyOrder" }, - "EntityResult": { - "description": "The result of fetching an entity from Datastore.", + "BeginTransactionRequest": { + "type": "object", + "properties": {}, + "id": "BeginTransactionRequest", + "description": "The request for Datastore.BeginTransaction." + }, + "CommitRequest": { + "description": "The request for Datastore.Commit.", "type": "object", "properties": { - "cursor": { + "transaction": { "format": "byte", - "description": "A cursor that points to the position after the result entity.\nSet only when the `EntityResult` is part of a `QueryResultBatch` message.", + "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", "type": "string" }, - "version": { - "format": "int64", - "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.", - "type": "string" + "mode": { + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", + "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." + ], + "enum": [ + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" + ] }, - "entity": { - "$ref": "Entity", - "description": "The resulting entity." + "mutations": { + "description": "The mutations to perform.\n\nWhen mode is `TRANSACTIONAL`, mutations affecting a single entity are\napplied in order. The following sequences of mutations affecting a single\nentity are not permitted in a single `Commit` request:\n\n- `insert` followed by `insert`\n- `update` followed by `insert`\n- `upsert` followed by `insert`\n- `delete` followed by `update`\n\nWhen mode is `NON_TRANSACTIONAL`, no two mutations may affect a single\nentity.", + "items": { + "$ref": "Mutation" + }, + "type": "array" } }, - "id": "EntityResult" + "id": "CommitRequest" }, - "Value": { + "KindExpression": { + "description": "A representation of a kind.", + "type": "object", "properties": { - "geoPointValue": { - "$ref": "LatLng", - "description": "A geo point value representing a point on the surface of Earth." - }, - "integerValue": { - "format": "int64", - "description": "An integer value.", - "type": "string" - }, - "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.", + "name": { + "description": "The name of the kind.", "type": "string" - }, - "excludeFromIndexes": { - "description": "If the value should be excluded from all indexes including those defined\nexplicitly.", - "type": "boolean" - }, - "doubleValue": { + } + }, + "id": "KindExpression" + }, + "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", + "type": "object", + "properties": { + "latitude": { "format": "double", - "description": "A double value.", + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "type": "number" }, - "timestampValue": { - "format": "google-datetime", - "description": "A timestamp value.\nWhen stored in the Datastore, precise only to microseconds;\nany additional precision is rounded down.", - "type": "string" - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "nullValue": { - "enum": [ - "NULL_VALUE" - ], - "description": "A null value.", - "type": "string", - "enumDescriptions": [ - "Null value." - ] - }, - "blobValue": { - "format": "byte", - "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.", - "type": "string" - }, - "meaning": { - "format": "int32", - "description": "The `meaning` field should only be populated for backwards compatibility.", - "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": { - "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" + "longitude": { + "format": "double", + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "type": "number" } }, - "id": "Value", - "description": "A message that can hold any of the supported value types and associated\nmetadata.", - "type": "object" + "id": "LatLng" }, - "CommitResponse": { - "id": "CommitResponse", - "description": "The response for Datastore.Commit.", + "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": { - "indexUpdates": { - "format": "int32", - "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", - "type": "integer" + "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" }, - "mutationResults": { - "description": "The result of performing the mutations.\nThe i-th mutation result corresponds to the i-th mutation in the request.", + "path": { + "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nAn entity path is always fully complete: *all* of the entity's ancestors\nare required to be in the path along with the entity identifier itself.\nThe only exception is that in some documented cases, the identifier in the\nlast path element (for the entity) itself may be omitted. For example,\nthe last path element of the key of `Mutation.insert` may have no\nidentifier.\n\nA path can never be empty, and a path can have at most 100 elements.", "items": { - "$ref": "MutationResult" + "$ref": "PathElement" }, "type": "array" } - } + }, + "id": "Key" }, - "PartitionId": { + "PropertyReference": { + "description": "A reference to a property relative to the kind expressions.", "type": "object", "properties": { - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", - "type": "string" - }, - "projectId": { - "description": "The ID of the project to which the entities belong.", + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", "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." + "id": "PropertyReference" }, - "Entity": { + "Projection": { "properties": { - "key": { - "$ref": "Key", - "description": "The entity's key.\n\nAn entity must have a key, unless otherwise documented (for example,\nan entity in `Value.entity_value` may have no key).\nAn entity's kind is its key path's last element's kind,\nor null if it has no key." - }, - "properties": { - "type": "object", - "additionalProperties": { - "$ref": "Value" - }, - "description": "The entity's properties.\nThe map's keys are property names.\nA property name matching regex `__.*__` is reserved.\nA reserved property name is forbidden in certain documented contexts.\nThe name must not contain more than 500 characters.\nThe name cannot be `\"\"`." + "property": { + "$ref": "PropertyReference", + "description": "The property to project." } }, - "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.", + "id": "Projection", + "description": "A representation of a property in a projection.", "type": "object" }, - "LookupRequest": { - "id": "LookupRequest", - "description": "The request for Datastore.Lookup.", + "ArrayValue": { "type": "object", "properties": { - "keys": { - "description": "Keys of entities to look up.", + "values": { "items": { - "$ref": "Key" + "$ref": "Value" }, - "type": "array" - }, - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this lookup request." + "type": "array", + "description": "Values in the array.\nThe order of this array may not be preserved if it contains a mix of\nindexed and unindexed values." } - } + }, + "id": "ArrayValue", + "description": "An array value." }, - "QueryResultBatch": { - "description": "A batch of results produced by a query.", + "Mutation": { + "description": "A mutation to apply to an entity.", "type": "object", "properties": { - "skippedCursor": { - "format": "byte", - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", + "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." + }, + "baseVersion": { + "format": "int64", + "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.", "type": "string" }, - "skippedResults": { - "format": "int32", - "description": "The number of results skipped, typically because of an offset.", - "type": "integer" + "insert": { + "description": "The entity to insert. The entity must not already exist.\nThe entity key's final path element may be incomplete.", + "$ref": "Entity" }, - "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" + "update": { + "$ref": "Entity", + "description": "The entity to update. The entity must already exist.\nMust have a complete key path." }, - "entityResults": { - "description": "The results for this batch.", - "items": { - "$ref": "EntityResult" - }, - "type": "array" + "upsert": { + "$ref": "Entity", + "description": "The entity to upsert. The entity may or may not already exist.\nThe entity key's final path element may be incomplete." + } + }, + "id": "Mutation" + }, + "ReadOptions": { + "description": "The options shared by read requests.", + "type": "object", + "properties": { + "transaction": { + "format": "byte", + "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "type": "string" }, - "moreResults": { + "readConsistency": { "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." + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." ], "enum": [ - "MORE_RESULTS_TYPE_UNSPECIFIED", - "NOT_FINISHED", - "MORE_RESULTS_AFTER_LIMIT", - "MORE_RESULTS_AFTER_CURSOR", - "NO_MORE_RESULTS" + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" ], - "description": "The state of the query after the current batch.", + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", "type": "string" + } + }, + "id": "ReadOptions" + }, + "RollbackResponse": { + "description": "The response for Datastore.Rollback.\n(an empty message).", + "type": "object", + "properties": {}, + "id": "RollbackResponse" + }, + "MutationResult": { + "description": "The result of applying a mutation.", + "type": "object", + "properties": { + "version": { + "type": "string", + "format": "int64", + "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." }, - "endCursor": { - "format": "byte", - "description": "A cursor that points to the position after the last result in the batch.", - "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" }, - "snapshotVersion": { - "format": "int64", - "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.", - "type": "string" + "key": { + "$ref": "Key", + "description": "The automatically allocated key.\nSet only when the mutation allocated a key." } }, - "id": "QueryResultBatch" + "id": "MutationResult" }, - "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.", + "GqlQuery": { + "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", "type": "object", "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 `\"\"`.", + "queryString": { + "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", "type": "string" }, - "kind": { - "description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", - "type": "string" + "positionalBindings": { + "description": "Numbered binding site @1 references the first numbered parameter,\neffectively using 1-based indexing, rather than the usual 0.\n\nFor each binding site numbered i in `query_string`, there must be an i-th\nnumbered parameter. The inverse must also be true.", + "items": { + "$ref": "GqlQueryParameter" + }, + "type": "array" }, - "id": { - "format": "int64", - "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.", - "type": "string" + "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" + }, + "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" } }, - "id": "PathElement" + "id": "GqlQuery" }, - "GqlQueryParameter": { - "description": "A binding parameter for a GQL query.", + "Filter": { + "description": "A holder for any type of filter.", "type": "object", "properties": { - "cursor": { - "type": "string", - "format": "byte", - "description": "A query cursor. Query cursors are returned in query\nresult batches." + "compositeFilter": { + "description": "A composite filter.", + "$ref": "CompositeFilter" }, - "value": { - "$ref": "Value", - "description": "A value parameter." + "propertyFilter": { + "description": "A filter on a property.", + "$ref": "PropertyFilter" } }, - "id": "GqlQueryParameter" + "id": "Filter" }, - "BeginTransactionResponse": { - "description": "The response for Datastore.BeginTransaction.", + "RunQueryRequest": { + "id": "RunQueryRequest", + "description": "The request for Datastore.RunQuery.", + "type": "object", + "properties": { + "gqlQuery": { + "description": "The GQL query to run.", + "$ref": "GqlQuery" + }, + "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" + }, + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this query." + }, + "query": { + "$ref": "Query", + "description": "The query to run." + } + } + }, + "RollbackRequest": { + "description": "The request for Datastore.Rollback.", "type": "object", "properties": { "transaction": { "format": "byte", - "description": "The transaction identifier (always present).", + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", "type": "string" } }, - "id": "BeginTransactionResponse" + "id": "RollbackRequest" + } + }, + "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": "v1beta3", + "baseUrl": "https://datastore.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/datastore": { + "description": "View and manage your Google Cloud Datastore data" + } + } } - } + }, + "kind": "discovery#restDescription", + "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", + "servicePath": "", + "rootUrl": "https://datastore.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "datastore" } diff --git a/DiscoveryJson/dlp_v2beta1.json b/DiscoveryJson/dlp_v2beta1.json index 744b214d9c..eab405f45e 100644 --- a/DiscoveryJson/dlp_v2beta1.json +++ b/DiscoveryJson/dlp_v2beta1.json @@ -1,21 +1,107 @@ { - "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", - "title": "DLP API", "ownerName": "Google", "resources": { + "rootCategories": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" + }, + "parameters": { + "languageCode": { + "location": "query", + "description": "Optional language code for localized friendly category names.\nIf omitted or if localized strings are not available,\nen-US strings will be returned.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/rootCategories", + "path": "v2beta1/rootCategories", + "id": "dlp.rootCategories.list", + "description": "Returns the list of root categories of sensitive information." + } + }, + "resources": { + "infoTypes": { + "methods": { + "list": { + "description": "Returns sensitive information types for given category.", + "response": { + "$ref": "GooglePrivacyDlpV2beta1ListInfoTypesResponse" + }, + "parameterOrder": [ + "category" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "languageCode": { + "location": "query", + "description": "Optional BCP-47 language code for localized info type friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", + "type": "string" + }, + "category": { + "pattern": "^[^/]+$", + "location": "path", + "description": "Category name as returned by ListRootCategories.", + "type": "string", + "required": true + } + }, + "flatPath": "v2beta1/rootCategories/{rootCategoriesId}/infoTypes", + "id": "dlp.rootCategories.infoTypes.list", + "path": "v2beta1/rootCategories/{+category}/infoTypes" + } + } + } + } + }, + "content": { + "methods": { + "inspect": { + "response": { + "$ref": "GooglePrivacyDlpV2beta1InspectContentResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v2beta1/content:inspect", + "id": "dlp.content.inspect", + "path": "v2beta1/content:inspect", + "request": { + "$ref": "GooglePrivacyDlpV2beta1InspectContentRequest" + }, + "description": "Finds potentially sensitive info in a list of strings.\nThis method has limits on input size, processing time, and output size." + }, + "redact": { + "path": "v2beta1/content:redact", + "id": "dlp.content.redact", + "description": "Redacts potentially sensitive info from a list of strings.\nThis method has limits on input size, processing time, and output size.", + "request": { + "$ref": "GooglePrivacyDlpV2beta1RedactContentRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "GooglePrivacyDlpV2beta1RedactContentResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/content:redact" + } + } + }, "inspect": { "resources": { "results": { @@ -23,17 +109,17 @@ "findings": { "methods": { "list": { + "flatPath": "v2beta1/inspect/results/{resultsId}/findings", + "path": "v2beta1/{+name}/findings", + "id": "dlp.inspect.results.findings.list", "description": "Returns list of results for given inspect operation result set id.", + "httpMethod": "GET", "response": { "$ref": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse" }, - "httpMethod": "GET", "parameterOrder": [ "name" ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "pageToken": { "location": "query", @@ -41,11 +127,11 @@ "type": "string" }, "name": { + "pattern": "^inspect/results/[^/]+$", + "location": "path", "description": "Identifier of the results set returned as metadata of\nthe longrunning operation created by a call to CreateInspectOperation.\nShould be in the format of `inspect/results/{id}`.", "type": "string", - "required": true, - "pattern": "^inspect/results/[^/]+$", - "location": "path" + "required": true }, "pageSize": { "format": "int32", @@ -59,9 +145,9 @@ "type": "string" } }, - "flatPath": "v2beta1/inspect/results/{resultsId}/findings", - "id": "dlp.inspect.results.findings.list", - "path": "v2beta1/{+name}/findings" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -69,60 +155,45 @@ }, "operations": { "methods": { - "create": { - "request": { - "$ref": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" - }, - "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v2beta1/inspect/operations", - "path": "v2beta1/inspect/operations", - "id": "dlp.inspect.operations.create" - }, "cancel": { - "id": "dlp.inspect.operations.cancel", - "path": "v2beta1/{+name}:cancel", "description": "Cancels an operation. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation.", "request": { "$ref": "GoogleLongrunningCancelOperationRequest" }, - "response": { - "$ref": "GoogleProtobufEmpty" - }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "response": { + "$ref": "GoogleProtobufEmpty" + }, "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", "type": "string", "required": true, "pattern": "^inspect/operations/[^/]+$", - "location": "path" + "location": "path", + "description": "The name of the operation resource to be cancelled." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v2beta1/inspect/operations/{operationsId}:cancel" + "flatPath": "v2beta1/inspect/operations/{operationsId}:cancel", + "path": "v2beta1/{+name}:cancel", + "id": "dlp.inspect.operations.cancel" }, "delete": { + "path": "v2beta1/{+name}", + "id": "dlp.inspect.operations.delete", + "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", + "httpMethod": "DELETE", "response": { "$ref": "GoogleProtobufEmpty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "parameters": { "name": { "pattern": "^inspect/operations/[^/]+$", @@ -135,58 +206,47 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v2beta1/inspect/operations/{operationsId}", - "id": "dlp.inspect.operations.delete", - "path": "v2beta1/{+name}", - "description": "This method is not supported and the server returns `UNIMPLEMENTED`." + "flatPath": "v2beta1/inspect/operations/{operationsId}" }, "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": { + "location": "path", "description": "The name of the operation resource.", "type": "string", "required": true, - "pattern": "^inspect/operations/[^/]+$", - "location": "path" + "pattern": "^inspect/operations/[^/]+$" } }, "flatPath": "v2beta1/inspect/operations/{operationsId}", "id": "dlp.inspect.operations.get", - "path": "v2beta1/{+name}" + "path": "v2beta1/{+name}", + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET" }, "list": { "description": "Fetch the list of long running operations.", + "httpMethod": "GET", "response": { "$ref": "GoogleLongrunningListOperationsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "filter": { - "location": "query", - "description": "This parameter supports filtering by done, ie done=true or done=false.", - "type": "string" - }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "name": { "description": "The name of the operation's parent resource.", @@ -196,148 +256,57 @@ "location": "path" }, "pageSize": { - "format": "int32", - "description": "The list page size. The max allowed value is 256 and default is 100.", "type": "integer", - "location": "query" + "location": "query", + "format": "int32", + "description": "The list page size. The max allowed value is 256 and default is 100." + }, + "filter": { + "location": "query", + "description": "This parameter supports filtering by done, ie done=true or done=false.", + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v2beta1/inspect/operations", - "id": "dlp.inspect.operations.list", - "path": "v2beta1/{+name}" - } - } - } - } - }, - "rootCategories": { - "methods": { - "list": { - "description": "Returns the list of root categories of sensitive information.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" - }, - "parameters": { - "languageCode": { - "description": "Optional language code for localized friendly category names.\nIf omitted or if localized strings are not available,\nen-US strings will be returned.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/rootCategories", - "path": "v2beta1/rootCategories", - "id": "dlp.rootCategories.list" - } - }, - "resources": { - "infoTypes": { - "methods": { - "list": { + "path": "v2beta1/{+name}", + "id": "dlp.inspect.operations.list" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "GooglePrivacyDlpV2beta1ListInfoTypesResponse" + "$ref": "GoogleLongrunningOperation" }, - "parameterOrder": [ - "category" - ], - "httpMethod": "GET", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "parameters": { - "category": { - "pattern": "^[^/]+$", - "location": "path", - "description": "Category name as returned by ListRootCategories.", - "type": "string", - "required": true - }, - "languageCode": { - "description": "Optional BCP-47 language code for localized info type friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2beta1/rootCategories/{rootCategoriesId}/infoTypes", - "id": "dlp.rootCategories.infoTypes.list", - "path": "v2beta1/rootCategories/{+category}/infoTypes", - "description": "Returns sensitive information types for given category." - } - } - } - } - }, - "content": { - "methods": { - "inspect": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GooglePrivacyDlpV2beta1InspectContentResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/content:inspect", - "path": "v2beta1/content:inspect", - "id": "dlp.content.inspect", - "description": "Finds potentially sensitive info in a list of strings.\nThis method has limits on input size, processing time, and output size.", - "request": { - "$ref": "GooglePrivacyDlpV2beta1InspectContentRequest" - } - }, - "redact": { - "description": "Redacts potentially sensitive info from a list of strings.\nThis method has limits on input size, processing time, and output size.", - "request": { - "$ref": "GooglePrivacyDlpV2beta1RedactContentRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2beta1RedactContentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/content:redact", - "id": "dlp.content.redact", - "path": "v2beta1/content:redact" - } - } - } - }, - "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" - ], + "flatPath": "v2beta1/inspect/operations", + "path": "v2beta1/inspect/operations", + "id": "dlp.inspect.operations.create", + "description": "Schedules a job scanning content in a Google Cloud Platform data\nrepository.", + "request": { + "$ref": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" + } + } + } + } + } + } + }, + "parameters": { + "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", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "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.", @@ -345,14 +314,9 @@ "location": "query" }, "pp": { - "location": "query", "description": "Pretty-print response.", "default": "true", - "type": "boolean" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", + "type": "boolean", "location": "query" }, "bearer_token": { @@ -360,10 +324,15 @@ "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" + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, "prettyPrint": { "description": "Returns response with indentations and line breaks.", @@ -381,29 +350,45 @@ "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", + "enum": [ + "1", + "2" + ] + }, + "callback": { + "description": "JSONP", + "type": "string", "location": "query" + }, + "alt": { + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] } }, "version": "v2beta1", "baseUrl": "https://dlp.googleapis.com/", - "servicePath": "", "description": "The Google Data Loss Prevention API provides methods for detection of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "servicePath": "", "kind": "discovery#restDescription", "basePath": "", "id": "dlp:v2beta1", @@ -412,6 +397,75 @@ "discoveryVersion": "v1", "version_module": "True", "schemas": { + "GooglePrivacyDlpV2beta1InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "type": "object", + "properties": { + "maxFindings": { + "type": "integer", + "format": "int32", + "description": "Limits the number of findings per content item or long running operation." + }, + "excludeTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "infoTypes": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1InfoType" + }, + "type": "array", + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors." + }, + "includeQuote": { + "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", + "type": "boolean" + }, + "minLikelihood": { + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "description": "Only returns findings equal or above this threshold.", + "type": "string", + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ] + } + }, + "id": "GooglePrivacyDlpV2beta1InspectConfig" + }, + "GooglePrivacyDlpV2beta1Projection": { + "description": "A representation of a Datastore property in a projection.", + "type": "object", + "properties": { + "property": { + "$ref": "GooglePrivacyDlpV2beta1PropertyReference", + "description": "The property to project." + } + }, + "id": "GooglePrivacyDlpV2beta1Projection" + }, + "GooglePrivacyDlpV2beta1DatastoreKey": { + "properties": { + "entityKey": { + "description": "Datastore entity key.", + "$ref": "GooglePrivacyDlpV2beta1Key" + } + }, + "id": "GooglePrivacyDlpV2beta1DatastoreKey", + "description": "Record key for a finding in Cloud Datastore.", + "type": "object" + }, "GooglePrivacyDlpV2beta1CloudStorageOptions": { "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", "type": "object", @@ -435,95 +489,95 @@ "$ref": "GooglePrivacyDlpV2beta1StorageConfig" }, "outputConfig": { - "description": "Optional location to store findings. The bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\n\u003cp\u003eResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written. \u003cp\u003eThe CSV file(s) contain the\nfollowing columns regardless of storage type scanned: \u003cli\u003eid \u003cli\u003einfo_type\n\u003cli\u003elikelihood \u003cli\u003ebyte size of finding \u003cli\u003equote \u003cli\u003etime_stamp\u003cbr/\u003e\n\u003cp\u003eFor Cloud Storage the next columns are: \u003cli\u003efile_path\n\u003cli\u003estart_offset\u003cbr/\u003e\n\u003cp\u003eFor Cloud Datastore the next columns are: \u003cli\u003eproject_id\n\u003cli\u003enamespace_id \u003cli\u003epath \u003cli\u003ecolumn_name \u003cli\u003eoffset", - "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig" + "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", + "description": "Optional location to store findings. The bucket must already exist and\nthe Google APIs service account for DLP must have write permission to\nwrite to the given bucket.\n\u003cp\u003eResults are split over multiple csv files with each file name matching\nthe pattern \"[operation_id]_[count].csv\", for example\n`3094877188788974909_1.csv`. The `operation_id` matches the\nidentifier for the Operation, and the `count` is a counter used for\ntracking the number of files written. \u003cp\u003eThe CSV file(s) contain the\nfollowing columns regardless of storage type scanned: \u003cli\u003eid \u003cli\u003einfo_type\n\u003cli\u003elikelihood \u003cli\u003ebyte size of finding \u003cli\u003equote \u003cli\u003etime_stamp\u003cbr/\u003e\n\u003cp\u003eFor Cloud Storage the next columns are: \u003cli\u003efile_path\n\u003cli\u003estart_offset\u003cbr/\u003e\n\u003cp\u003eFor Cloud Datastore the next columns are: \u003cli\u003eproject_id\n\u003cli\u003enamespace_id \u003cli\u003epath \u003cli\u003ecolumn_name \u003cli\u003eoffset" } }, "id": "GooglePrivacyDlpV2beta1CreateInspectOperationRequest" }, "GooglePrivacyDlpV2beta1RecordKey": { + "id": "GooglePrivacyDlpV2beta1RecordKey", "description": "Message for a unique key indicating a record that contains a finding.", "type": "object", "properties": { - "datastoreKey": { - "$ref": "GooglePrivacyDlpV2beta1DatastoreKey" - }, "cloudStorageKey": { "$ref": "GooglePrivacyDlpV2beta1CloudStorageKey" + }, + "datastoreKey": { + "$ref": "GooglePrivacyDlpV2beta1DatastoreKey" } - }, - "id": "GooglePrivacyDlpV2beta1RecordKey" + } }, "GooglePrivacyDlpV2beta1Key": { "description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.", "type": "object", "properties": { + "partitionId": { + "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition.", + "$ref": "GooglePrivacyDlpV2beta1PartitionId" + }, "path": { "description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements.", "items": { "$ref": "GooglePrivacyDlpV2beta1PathElement" }, "type": "array" - }, - "partitionId": { - "description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition.", - "$ref": "GooglePrivacyDlpV2beta1PartitionId" } }, "id": "GooglePrivacyDlpV2beta1Key" }, - "GooglePrivacyDlpV2beta1CloudStoragePath": { - "description": "A location in Cloud Storage.", - "type": "object", - "properties": { - "path": { - "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2beta1CloudStoragePath" - }, "GooglePrivacyDlpV2beta1InspectContentRequest": { + "description": "Request to search for potentially sensitive info in a list of items.", + "type": "object", "properties": { - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2beta1InspectConfig", - "description": "Configuration for the inspector." - }, "items": { "description": "The list of items to inspect. Items in a single request are\nconsidered \"related\" unless inspect_config.independent_inputs is true.\nUp to 100 are allowed per request.", "items": { "$ref": "GooglePrivacyDlpV2beta1ContentItem" }, "type": "array" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2beta1InspectConfig", + "description": "Configuration for the inspector." } }, - "id": "GooglePrivacyDlpV2beta1InspectContentRequest", - "description": "Request to search for potentially sensitive info in a list of items.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1InspectContentRequest" }, - "GooglePrivacyDlpV2beta1InspectOperationResult": { - "description": "The operational data.", + "GooglePrivacyDlpV2beta1CloudStoragePath": { + "description": "A location in Cloud Storage.", "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The url, in the format of `gs://bucket/\u003cpath\u003e`." + } + }, + "id": "GooglePrivacyDlpV2beta1CloudStoragePath" + }, + "GooglePrivacyDlpV2beta1InspectOperationResult": { "properties": { "name": { "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `inspect/results/{id}`.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1InspectOperationResult" + "id": "GooglePrivacyDlpV2beta1InspectOperationResult", + "description": "The operational data.", + "type": "object" }, "GooglePrivacyDlpV2beta1Range": { "description": "Generic half-open interval [start, end)", "type": "object", "properties": { - "start": { + "end": { "format": "int64", - "description": "Index of the first character of the range (inclusive).", + "description": "Index of the last character of the range (exclusive).", "type": "string" }, - "end": { + "start": { "format": "int64", - "description": "Index of the last character of the range (exclusive).", + "description": "Index of the first character of the range (inclusive).", "type": "string" } }, @@ -542,13 +596,28 @@ "type": "boolean" }, "infoType": { - "$ref": "GooglePrivacyDlpV2beta1InfoType", - "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redacts all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig." + "description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redacts all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig.", + "$ref": "GooglePrivacyDlpV2beta1InfoType" } }, "id": "GooglePrivacyDlpV2beta1ImageRedactionConfig" }, + "GooglePrivacyDlpV2beta1RedactContentResponse": { + "description": "Results of redacting a list of items.", + "type": "object", + "properties": { + "items": { + "items": { + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array", + "description": "The redacted content." + } + }, + "id": "GooglePrivacyDlpV2beta1RedactContentResponse" + }, "GooglePrivacyDlpV2beta1InfoTypeStatistics": { + "type": "object", "properties": { "count": { "format": "int64", @@ -561,47 +630,30 @@ } }, "id": "GooglePrivacyDlpV2beta1InfoTypeStatistics", - "description": "Statistics regarding a specific InfoType.", - "type": "object" - }, - "GooglePrivacyDlpV2beta1RedactContentResponse": { - "description": "Results of redacting a list of items.", - "type": "object", - "properties": { - "items": { - "description": "The redacted content.", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - }, - "type": "array" - } - }, - "id": "GooglePrivacyDlpV2beta1RedactContentResponse" + "description": "Statistics regarding a specific InfoType." }, "GooglePrivacyDlpV2beta1PropertyReference": { + "description": "A reference to a property relative to the Datastore kind expressions.", + "type": "object", "properties": { "name": { "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1PropertyReference", - "description": "A reference to a property relative to the Datastore kind expressions.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1PropertyReference" }, "GooglePrivacyDlpV2beta1Location": { + "description": "Specifies the location of a finding within its source item.", + "type": "object", "properties": { - "recordKey": { - "description": "Key of the finding.", - "$ref": "GooglePrivacyDlpV2beta1RecordKey" - }, "codepointRange": { "$ref": "GooglePrivacyDlpV2beta1Range", "description": "Character offsets within a content item, included when content type\nis a text. Default charset assumed to be UTF-8." }, "fieldId": { - "description": "Field id of the field containing the finding.", - "$ref": "GooglePrivacyDlpV2beta1FieldId" + "$ref": "GooglePrivacyDlpV2beta1FieldId", + "description": "Field id of the field containing the finding." }, "imageBoxes": { "description": "Location within an image's pixels.", @@ -611,62 +663,42 @@ "type": "array" }, "byteRange": { - "description": "Zero-based byte offsets within a content item.", - "$ref": "GooglePrivacyDlpV2beta1Range" + "$ref": "GooglePrivacyDlpV2beta1Range", + "description": "Zero-based byte offsets within a content item." + }, + "recordKey": { + "description": "Key of the finding.", + "$ref": "GooglePrivacyDlpV2beta1RecordKey" } }, - "id": "GooglePrivacyDlpV2beta1Location", - "description": "Specifies the location of a finding within its source item.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1Location" }, "GooglePrivacyDlpV2beta1InspectResult": { + "type": "object", "properties": { - "findingsTruncated": { - "description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.", - "type": "boolean" - }, "findings": { "description": "List of findings for an item.", "items": { "$ref": "GooglePrivacyDlpV2beta1Finding" }, "type": "array" - } - }, - "id": "GooglePrivacyDlpV2beta1InspectResult", - "description": "All the findings for a single scanned item.", - "type": "object" - }, - "GooglePrivacyDlpV2beta1InfoTypeDescription": { - "description": "Info type description.", - "type": "object", - "properties": { - "categories": { - "description": "List of categories this info type belongs to.", - "items": { - "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" - }, - "type": "array" - }, - "name": { - "description": "Internal name of the info type.", - "type": "string" }, - "displayName": { - "description": "Human readable form of the info type name.", - "type": "string" + "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" } }, - "id": "GooglePrivacyDlpV2beta1InfoTypeDescription" + "id": "GooglePrivacyDlpV2beta1InspectResult", + "description": "All the findings for a single scanned item." }, "GooglePrivacyDlpV2beta1ImageLocation": { "description": "Bounding box encompassing detected text within an image.", "type": "object", "properties": { "height": { + "type": "integer", "format": "int32", - "description": "Height of the bounding box in pixels.", - "type": "integer" + "description": "Height of the bounding box in pixels." }, "top": { "format": "int32", @@ -686,19 +718,40 @@ }, "id": "GooglePrivacyDlpV2beta1ImageLocation" }, + "GooglePrivacyDlpV2beta1InfoTypeDescription": { + "id": "GooglePrivacyDlpV2beta1InfoTypeDescription", + "description": "Info type description.", + "type": "object", + "properties": { + "categories": { + "description": "List of categories this info type belongs to.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1CategoryDescription" + }, + "type": "array" + }, + "name": { + "description": "Internal name of the info type.", + "type": "string" + }, + "displayName": { + "type": "string", + "description": "Human readable form of the info type name." + } + } + }, "GooglePrivacyDlpV2beta1OutputStorageConfig": { "description": "Cloud repository for storing output.", "type": "object", "properties": { "storagePath": { - "description": "The path to a Google Cloud Storage location to store output.", - "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath" + "$ref": "GooglePrivacyDlpV2beta1CloudStoragePath", + "description": "The path to a Google Cloud Storage location to store output." } }, "id": "GooglePrivacyDlpV2beta1OutputStorageConfig" }, "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": { @@ -722,9 +775,12 @@ "type": "string" } }, - "id": "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." }, "GooglePrivacyDlpV2beta1StorageConfig": { + "description": "Shared message indicating Cloud storage type.", + "type": "object", "properties": { "cloudStorageOptions": { "$ref": "GooglePrivacyDlpV2beta1CloudStorageOptions", @@ -735,9 +791,7 @@ "$ref": "GooglePrivacyDlpV2beta1DatastoreOptions" } }, - "id": "GooglePrivacyDlpV2beta1StorageConfig", - "description": "Shared message indicating Cloud storage type.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1StorageConfig" }, "GoogleLongrunningOperation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", @@ -760,8 +814,8 @@ "type": "string" }, "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "GoogleRpcStatus" + "$ref": "GoogleRpcStatus", + "description": "The error result of the operation in case of failure or cancellation." }, "metadata": { "additionalProperties": { @@ -775,45 +829,38 @@ "id": "GoogleLongrunningOperation" }, "GooglePrivacyDlpV2beta1ContentItem": { + "description": "Container structure for the content to inspect.", + "type": "object", "properties": { - "value": { - "description": "String data to inspect or redact.", - "type": "string" - }, "data": { + "type": "string", "format": "byte", - "description": "Content data to inspect or redact.", - "type": "string" + "description": "Content data to inspect or redact." }, "type": { "description": "Type of the content, as defined in Content-Type HTTP header.\nSupported types are: all \"text\" types, octet streams, PNG images,\nJPEG images.", "type": "string" + }, + "value": { + "type": "string", + "description": "String data to inspect or redact." } }, - "id": "GooglePrivacyDlpV2beta1ContentItem", - "description": "Container structure for the content to inspect.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1ContentItem" }, "GooglePrivacyDlpV2beta1InspectOperationMetadata": { + "description": "Metadata returned within GetOperation for an inspect request.", + "type": "object", "properties": { - "requestOutputConfig": { - "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig", - "description": "Optional location to store findings." - }, - "createTime": { - "format": "google-datetime", - "description": "The time which this request was started.", - "type": "string" + "requestStorageConfig": { + "description": "The storage config used to create the Operation.", + "$ref": "GooglePrivacyDlpV2beta1StorageConfig" }, "processedBytes": { "format": "int64", "description": "Total size in bytes that were processed.", "type": "string" }, - "requestStorageConfig": { - "description": "The storage config used to create the Operation.", - "$ref": "GooglePrivacyDlpV2beta1StorageConfig" - }, "infoTypeStats": { "items": { "$ref": "GooglePrivacyDlpV2beta1InfoTypeStatistics" @@ -828,11 +875,18 @@ "requestInspectConfig": { "description": "The inspect config used to create the Operation.", "$ref": "GooglePrivacyDlpV2beta1InspectConfig" + }, + "requestOutputConfig": { + "description": "Optional location to store findings.", + "$ref": "GooglePrivacyDlpV2beta1OutputStorageConfig" + }, + "createTime": { + "format": "google-datetime", + "description": "The time which this request was started.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata", - "description": "Metadata returned within GetOperation for an inspect request.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1InspectOperationMetadata" }, "GooglePrivacyDlpV2beta1InfoType": { "description": "Type of information detected by the API.", @@ -846,6 +900,7 @@ "id": "GooglePrivacyDlpV2beta1InfoType" }, "GooglePrivacyDlpV2beta1ReplaceConfig": { + "type": "object", "properties": { "replaceWith": { "description": "Content replacing sensitive information of given type. Max 256 chars.", @@ -856,10 +911,10 @@ "description": "Type of information to replace. Only one ReplaceConfig per info_type\nshould be provided. If ReplaceConfig does not have an info_type, the DLP\nAPI matches it against all info_types that are found but not specified in\nanother ReplaceConfig." } }, - "id": "GooglePrivacyDlpV2beta1ReplaceConfig", - "type": "object" + "id": "GooglePrivacyDlpV2beta1ReplaceConfig" }, "GooglePrivacyDlpV2beta1Color": { + "id": "GooglePrivacyDlpV2beta1Color", "description": "Represents a color in the RGB color space.", "type": "object", "properties": { @@ -869,22 +924,26 @@ "type": "number" }, "blue": { + "type": "number", "format": "float", - "description": "The amount of blue in the color as a value in the interval [0, 1].", - "type": "number" + "description": "The amount of blue in the color as a value in the interval [0, 1]." }, "green": { "format": "float", "description": "The amount of green in the color as a value in the interval [0, 1].", "type": "number" } - }, - "id": "GooglePrivacyDlpV2beta1Color" + } }, "GooglePrivacyDlpV2beta1PathElement": { "description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete.", "type": "object", "properties": { + "id": { + "format": "int64", + "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.", + "type": "string" + }, "name": { "description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.", "type": "string" @@ -892,11 +951,6 @@ "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": { - "format": "int64", - "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.", - "type": "string" } }, "id": "GooglePrivacyDlpV2beta1PathElement" @@ -944,6 +998,22 @@ }, "id": "GooglePrivacyDlpV2beta1ListRootCategoriesResponse" }, + "GooglePrivacyDlpV2beta1CloudStorageKey": { + "description": "Record key for a finding in a Cloud Storage file.", + "type": "object", + "properties": { + "filePath": { + "description": "Path to the file.", + "type": "string" + }, + "startOffset": { + "format": "int64", + "description": "Byte offset of the referenced data in the file.", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2beta1CloudStorageKey" + }, "GooglePrivacyDlpV2beta1Finding": { "description": "Container structure describing a single finding within a string or image.", "type": "object", @@ -954,18 +1024,26 @@ "type": "string" }, "infoType": { - "description": "The specific type of info the string might be.", - "$ref": "GooglePrivacyDlpV2beta1InfoType" + "$ref": "GooglePrivacyDlpV2beta1InfoType", + "description": "The specific type of info the string might be." }, "location": { "$ref": "GooglePrivacyDlpV2beta1Location", "description": "Location of the info found." }, "quote": { - "description": "The specific string that may be potentially sensitive info.", - "type": "string" + "type": "string", + "description": "The specific string that may be potentially sensitive info." }, "likelihood": { + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], "enum": [ "LIKELIHOOD_UNSPECIFIED", "VERY_UNLIKELY", @@ -975,36 +1053,14 @@ "VERY_LIKELY" ], "description": "Estimate of how likely it is that the info_type is correct.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ] - } - }, - "id": "GooglePrivacyDlpV2beta1Finding" - }, - "GooglePrivacyDlpV2beta1CloudStorageKey": { - "properties": { - "filePath": { - "description": "Path to the file.", - "type": "string" - }, - "startOffset": { - "format": "int64", - "description": "Byte offset of the referenced data in the file.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1CloudStorageKey", - "description": "Record key for a finding in a Cloud Storage file.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1Finding" }, "GooglePrivacyDlpV2beta1PartitionId": { + "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", + "type": "object", "properties": { "projectId": { "description": "The ID of the project to which the entities belong.", @@ -1015,11 +1071,10 @@ "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1PartitionId", - "description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1PartitionId" }, "GooglePrivacyDlpV2beta1InspectContentResponse": { + "id": "GooglePrivacyDlpV2beta1InspectContentResponse", "description": "Results of inspecting a list of items.", "type": "object", "properties": { @@ -1030,8 +1085,7 @@ }, "type": "array" } - }, - "id": "GooglePrivacyDlpV2beta1InspectContentResponse" + } }, "GooglePrivacyDlpV2beta1KindExpression": { "description": "A representation of a Datastore kind.", @@ -1046,6 +1100,13 @@ }, "GooglePrivacyDlpV2beta1RedactContentRequest": { "properties": { + "items": { + "description": "The list of items to inspect. Up to 100 are allowed per request.", + "items": { + "$ref": "GooglePrivacyDlpV2beta1ContentItem" + }, + "type": "array" + }, "replaceConfigs": { "description": "The strings to replace findings text findings with. Must specify at least\none of these or one ImageRedactionConfig if redacting images.", "items": { @@ -1063,13 +1124,6 @@ "inspectConfig": { "description": "Configuration for the inspector.", "$ref": "GooglePrivacyDlpV2beta1InspectConfig" - }, - "items": { - "description": "The list of items to inspect. Up to 100 are allowed per request.", - "items": { - "$ref": "GooglePrivacyDlpV2beta1ContentItem" - }, - "type": "array" } }, "id": "GooglePrivacyDlpV2beta1RedactContentRequest", @@ -1077,6 +1131,7 @@ "type": "object" }, "GoogleLongrunningListOperationsResponse": { + "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -1091,35 +1146,38 @@ } }, "id": "GoogleLongrunningListOperationsResponse", - "description": "The response message for Operations.ListOperations.", - "type": "object" + "description": "The response message for Operations.ListOperations." }, "GooglePrivacyDlpV2beta1FieldId": { + "description": "General identifier of a data field in a storage service.", + "type": "object", "properties": { "columnName": { "description": "Column name describing the field.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1FieldId", - "description": "General identifier of a data field in a storage service.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1FieldId" }, "GooglePrivacyDlpV2beta1FileSet": { + "description": "Set of files to scan.", + "type": "object", "properties": { "url": { "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", "type": "string" } }, - "id": "GooglePrivacyDlpV2beta1FileSet", - "description": "Set of files to scan.", - "type": "object" + "id": "GooglePrivacyDlpV2beta1FileSet" }, "GooglePrivacyDlpV2beta1DatastoreOptions": { "description": "Options defining a data set within Google Cloud Datastore.", "type": "object", "properties": { + "partitionId": { + "$ref": "GooglePrivacyDlpV2beta1PartitionId", + "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty." + }, "projection": { "description": "Properties to scan. If none are specified, all properties will be scanned\nby default.", "items": { @@ -1130,114 +1188,56 @@ "kind": { "description": "The kind to process.", "$ref": "GooglePrivacyDlpV2beta1KindExpression" - }, - "partitionId": { - "description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.", - "$ref": "GooglePrivacyDlpV2beta1PartitionId" } }, "id": "GooglePrivacyDlpV2beta1DatastoreOptions" }, "GoogleLongrunningCancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", "type": "object", "properties": {}, - "id": "GoogleLongrunningCancelOperationRequest" + "id": "GoogleLongrunningCancelOperationRequest", + "description": "The request message for Operations.CancelOperation." }, "GoogleProtobufEmpty": { - "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 `{}`.", - "type": "object" + "type": "object", + "properties": {}, + "id": "GoogleProtobufEmpty" }, "GooglePrivacyDlpV2beta1ListInspectFindingsResponse": { + "id": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse", "description": "Response to the ListInspectFindings request.", "type": "object", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more results that match the\nrequest; this value should be passed in a new `ListInspectFindingsRequest`.", - "type": "string" + "type": "string", + "description": "If not empty, indicates that there may be more results that match the\nrequest; this value should be passed in a new `ListInspectFindingsRequest`." }, "result": { "$ref": "GooglePrivacyDlpV2beta1InspectResult", "description": "The results." } - }, - "id": "GooglePrivacyDlpV2beta1ListInspectFindingsResponse" - }, - "GooglePrivacyDlpV2beta1InspectConfig": { - "properties": { - "minLikelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Only returns findings equal or above this threshold.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ] - }, - "maxFindings": { - "format": "int32", - "description": "Limits the number of findings per content item or long running operation.", - "type": "integer" - }, - "excludeTypes": { - "description": "When true, excludes type information of the findings.", - "type": "boolean" - }, - "infoTypes": { - "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.\nEmpty info_types runs all enabled detectors.", - "items": { - "$ref": "GooglePrivacyDlpV2beta1InfoType" - }, - "type": "array" - }, - "includeQuote": { - "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", - "type": "boolean" - } - }, - "id": "GooglePrivacyDlpV2beta1InspectConfig", - "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", - "type": "object" - }, - "GooglePrivacyDlpV2beta1Projection": { - "properties": { - "property": { - "description": "The property to project.", - "$ref": "GooglePrivacyDlpV2beta1PropertyReference" - } - }, - "id": "GooglePrivacyDlpV2beta1Projection", - "description": "A representation of a Datastore property in a projection.", - "type": "object" - }, - "GooglePrivacyDlpV2beta1DatastoreKey": { - "description": "Record key for a finding in Cloud Datastore.", - "type": "object", - "properties": { - "entityKey": { - "$ref": "GooglePrivacyDlpV2beta1Key", - "description": "Datastore entity key." - } - }, - "id": "GooglePrivacyDlpV2beta1DatastoreKey" + } } }, - "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": "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", + "title": "DLP API" } diff --git a/DiscoveryJson/firebasedynamiclinks_v1.json b/DiscoveryJson/firebasedynamiclinks_v1.json index 792699c44f..dcf0661f48 100644 --- a/DiscoveryJson/firebasedynamiclinks_v1.json +++ b/DiscoveryJson/firebasedynamiclinks_v1.json @@ -1,260 +1,188 @@ { - "canonicalName": "Firebase Dynamic Links", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/firebase": { - "description": "View and administer all your Firebase data and settings" - } - } - } - }, - "rootUrl": "https://firebasedynamiclinks.googleapis.com/", - "ownerDomain": "google.com", - "name": "firebasedynamiclinks", - "batchPath": "batch", - "title": "Firebase Dynamic Links API", - "ownerName": "Google", - "resources": { - "shortLinks": { - "methods": { - "create": { - "description": "Creates a short Dynamic Link given either a valid long Dynamic Link or\ndetails such as Dynamic Link domain, Android and iOS app information.\nThe created short Dynamic Link will not expire.\n\nRepeated calls with the same long Dynamic Link or Dynamic Link information\nwill produce the same short Dynamic Link.\n\nThe Dynamic Link domain in the request must be owned by requester's\nFirebase project.", - "request": { - "$ref": "CreateShortDynamicLinkRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "CreateShortDynamicLinkResponse" + "schemas": { + "CreateShortDynamicLinkResponse": { + "description": "Response to create a short Dynamic Link.", + "type": "object", + "properties": { + "warning": { + "description": "Information about potential warnings on link creation.", + "items": { + "$ref": "DynamicLinkWarning" }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/shortLinks", - "path": "v1/shortLinks", - "id": "firebasedynamiclinks.shortLinks.create" + "type": "array" + }, + "shortLink": { + "type": "string", + "description": "Short Dynamic Link value. e.g. https://abcd.app.goo.gl/wxyz" + }, + "previewLink": { + "description": "Preivew link to show the link flow chart.", + "type": "string" } - } + }, + "id": "CreateShortDynamicLinkResponse" }, - "v1": { - "methods": { - "getLinkStats": { - "path": "v1/{dynamicLink}/linkStats", - "id": "firebasedynamiclinks.getLinkStats", - "description": "Fetches analytics stats of a short Dynamic Link for a given\nduration. Metrics include number of clicks, redirects, installs,\napp first opens, and app reopens.", - "httpMethod": "GET", - "response": { - "$ref": "DynamicLinkStats" - }, - "parameterOrder": [ - "dynamicLink" - ], - "scopes": [ - "https://www.googleapis.com/auth/firebase" + "Suffix": { + "properties": { + "option": { + "description": "Suffix option.", + "type": "string", + "enumDescriptions": [ + "The suffix option is not specified, performs as NOT_GUESSABLE .", + "Short Dynamic Link suffix is a base62 [0-9A-Za-z] encoded string of\na random generated 96 bit random number, which has a length of 17 chars.\nFor example, \"nlAR8U4SlKRZw1cb2\".\nIt prevents other people from guessing and crawling short Dynamic Links\nthat contain personal identifiable information.", + "Short Dynamic Link suffix is a base62 [0-9A-Za-z] string starting with a\nlength of 4 chars. the length will increase when all the space is\noccupied." ], - "parameters": { - "dynamicLink": { - "location": "path", - "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", - "type": "string", - "required": true - }, - "durationDays": { - "location": "query", - "format": "int64", - "description": "The span of time requested in days.", - "type": "string" - } - }, - "flatPath": "v1/{dynamicLink}/linkStats" + "enum": [ + "OPTION_UNSPECIFIED", + "UNGUESSABLE", + "SHORT" + ] } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "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" + }, + "id": "Suffix", + "description": "Short Dynamic Link suffix.", + "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" - } - }, - "version": "v1", - "baseUrl": "https://firebasedynamiclinks.googleapis.com/", - "servicePath": "", - "description": "Programmatically creates and manages Firebase Dynamic Links.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20170713", - "id": "firebasedynamiclinks:v1", - "documentationLink": "https://firebase.google.com/docs/dynamic-links/", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "SocialMetaTagInfo": { - "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", + "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": { - "socialImageLink": { - "description": "An image url string. Optional.", + "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" }, - "socialTitle": { - "description": "Title to be displayed. Optional.", + "utmCampaign": { + "description": "Campaign name; used for keyword analysis to identify a specific product\npromotion or strategic campaign.", "type": "string" }, - "socialDescription": { - "description": "A short description of the link. Optional.", + "utmContent": { + "description": "Campaign content; used for A/B testing and content-targeted ads to\ndifferentiate ads or links that point to the same URL.", + "type": "string" + }, + "utmMedium": { + "type": "string", + "description": "Campaign medium; used to identify a medium such as email or cost-per-click." + }, + "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" } }, - "id": "SocialMetaTagInfo" + "id": "GooglePlayAnalytics" }, - "AndroidInfo": { + "DynamicLinkInfo": { "properties": { - "androidPackageName": { - "description": "Android package name of the app.", - "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" }, - "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" + "navigationInfo": { + "$ref": "NavigationInfo", + "description": "Information of navigation behavior of a Firebase Dynamic Links." }, - "androidLink": { - "description": "If specified, this overrides the ‘link’ parameter on Android.", + "analyticsInfo": { + "$ref": "AnalyticsInfo", + "description": "Parameters used for tracking. See all tracking parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." + }, + "dynamicLinkDomain": { + "description": "Dynamic Links domain that the project owns, e.g. abcd.app.goo.gl\n[Learn more](https://firebase.google.com/docs/dynamic-links/android/receive)\non how to set up Dynamic Link domain associated with your Firebase project.\n\nRequired.", "type": "string" }, - "androidFallbackLink": { - "description": "Link to open on Android if the app is not installed.", + "link": { + "description": "The link your app will open, You can specify any URL your app can handle.\nThis link must be a well-formatted URL, be properly URL-encoded, and use\nthe HTTP or HTTPS scheme. See 'link' parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).\n\nRequired.", "type": "string" + }, + "iosInfo": { + "description": "iOS related information. See iOS related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).", + "$ref": "IosInfo" + }, + "socialMetaTagInfo": { + "$ref": "SocialMetaTagInfo", + "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites." } }, - "id": "AndroidInfo", - "description": "Android related attributes to the Dynamic Link.", + "id": "DynamicLinkInfo", + "description": "Information about a Dynamic Link.", "type": "object" }, - "DynamicLinkWarning": { - "description": "Dynamic Links warning messages.", + "ITunesConnectAnalytics": { + "description": "Parameters for iTunes Connect App Analytics.", "type": "object", "properties": { - "warningMessage": { - "description": "The warning message to help developers improve their requests.", - "type": "string" + "at": { + "description": "Affiliate token used to create affiliate-coded links.", + "type": "string" + }, + "mt": { + "description": "iTune media types, including music, podcasts, audiobooks and so on.", + "type": "string" + }, + "ct": { + "description": "Campaign text that developers can optionally add to any link in order to\ntrack sales from a specific marketing campaign.", + "type": "string" + }, + "pt": { + "description": "Provider token that enables analytics for Dynamic Links from within iTunes\nConnect.", + "type": "string" + } + }, + "id": "ITunesConnectAnalytics" + }, + "SocialMetaTagInfo": { + "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", + "type": "object", + "properties": { + "socialImageLink": { + "type": "string", + "description": "An image url string. Optional." + }, + "socialTitle": { + "description": "Title to be displayed. Optional.", + "type": "string" + }, + "socialDescription": { + "type": "string", + "description": "A short description of the link. Optional." + } + }, + "id": "SocialMetaTagInfo" + }, + "AndroidInfo": { + "id": "AndroidInfo", + "description": "Android related attributes to the Dynamic Link.", + "type": "object", + "properties": { + "androidPackageName": { + "description": "Android package name of the app.", + "type": "string" + }, + "androidMinPackageVersionCode": { + "description": "Minimum version code for the Android app. If the installed app’s version\ncode is lower, then the user is taken to the Play Store.", + "type": "string" + }, + "androidLink": { + "description": "If specified, this overrides the ‘link’ parameter on Android.", + "type": "string" + }, + "androidFallbackLink": { + "description": "Link to open on Android if the app is not installed.", + "type": "string" + } + } + }, + "DynamicLinkWarning": { + "description": "Dynamic Links warning messages.", + "type": "object", + "properties": { + "warningMessage": { + "description": "The warning message to help developers improve their requests.", + "type": "string" }, "warningCode": { - "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", "enumDescriptions": [ @@ -287,12 +215,45 @@ "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" ] } }, "id": "DynamicLinkWarning" }, "DynamicLinkStats": { + "description": "Analytics stats of a Dynamic Link for a given timeframe.", + "type": "object", "properties": { "linkEventStats": { "description": "Dynamic Link event stats.", @@ -302,12 +263,9 @@ "type": "array" } }, - "id": "DynamicLinkStats", - "description": "Analytics stats of a Dynamic Link for a given timeframe.", - "type": "object" + "id": "DynamicLinkStats" }, "NavigationInfo": { - "description": "Information of navigation behavior.", "type": "object", "properties": { "enableForcedRedirect": { @@ -315,27 +273,20 @@ "type": "boolean" } }, - "id": "NavigationInfo" + "id": "NavigationInfo", + "description": "Information of navigation behavior." }, "IosInfo": { "description": "iOS related attributes to the Dynamic Link..", "type": "object", "properties": { - "iosIpadFallbackLink": { - "description": "If specified, this overrides the ios_fallback_link value on iPads.", - "type": "string" - }, - "iosIpadBundleId": { - "description": "iPad bundle ID of the app.", - "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" + "type": "string", + "description": "iOS bundle ID of the app." }, "iosFallbackLink": { "description": "Link to open on iOS if the app is not installed.", @@ -344,6 +295,14 @@ "iosAppStoreId": { "description": "iOS App Store ID.", "type": "string" + }, + "iosIpadFallbackLink": { + "description": "If specified, this overrides the ios_fallback_link value on iPads.", + "type": "string" + }, + "iosIpadBundleId": { + "description": "iPad bundle ID of the app.", + "type": "string" } }, "id": "IosInfo" @@ -353,8 +312,8 @@ "type": "object", "properties": { "itunesConnectAnalytics": { - "description": "iTunes Connect App Analytics.", - "$ref": "ITunesConnectAnalytics" + "$ref": "ITunesConnectAnalytics", + "description": "iTunes Connect App Analytics." }, "googlePlayAnalytics": { "description": "Google Play Campaign Measurements.", @@ -364,6 +323,7 @@ "id": "AnalyticsInfo" }, "CreateShortDynamicLinkRequest": { + "id": "CreateShortDynamicLinkRequest", "description": "Request to create a short Dynamic Link.", "type": "object", "properties": { @@ -379,8 +339,7 @@ "description": "Short Dynamic Link suffix. Optional.", "$ref": "Suffix" } - }, - "id": "CreateShortDynamicLinkRequest" + } }, "DynamicLinkEventStat": { "description": "Dynamic Link event stat.", @@ -392,6 +351,14 @@ "type": "string" }, "event": { + "enumDescriptions": [ + "Unspecified type.", + "Indicates that an FDL is clicked by users.", + "Indicates that an FDL redirects users to fallback link.", + "Indicates that an FDL triggers an app install from Play store, currently\nit's impossible to get stats from App store.", + "Indicates that the app is opened for the first time after an install\ntriggered by FDLs", + "Indicates that the app is opened via an FDL for non-first time." + ], "enum": [ "DYNAMIC_LINK_EVENT_UNSPECIFIED", "CLICK", @@ -401,15 +368,7 @@ "APP_RE_OPEN" ], "description": "Link event.", - "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." - ] + "type": "string" }, "platform": { "enumDescriptions": [ @@ -429,143 +388,184 @@ } }, "id": "DynamicLinkEventStat" - }, - "CreateShortDynamicLinkResponse": { - "description": "Response to create a short Dynamic Link.", - "type": "object", - "properties": { - "warning": { - "description": "Information about potential warnings on link creation.", - "items": { - "$ref": "DynamicLinkWarning" + } + }, + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "protocol": "rest", + "canonicalName": "Firebase Dynamic Links", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/firebase": { + "description": "View and administer all your Firebase data and settings" + } + } + } + }, + "rootUrl": "https://firebasedynamiclinks.googleapis.com/", + "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" }, - "type": "array" - }, - "shortLink": { - "description": "Short Dynamic Link value. e.g. https://abcd.app.goo.gl/wxyz", - "type": "string" - }, - "previewLink": { - "description": "Preivew link to show the link flow chart.", - "type": "string" + "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": "CreateShortDynamicLinkResponse" + } }, - "Suffix": { - "description": "Short Dynamic Link suffix.", - "type": "object", - "properties": { - "option": { - "enum": [ - "OPTION_UNSPECIFIED", - "UNGUESSABLE", - "SHORT" + "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.", + "response": { + "$ref": "DynamicLinkStats" + }, + "parameterOrder": [ + "dynamicLink" ], - "description": "Suffix option.", - "type": "string", - "enumDescriptions": [ - "The suffix option is not specified, performs as NOT_GUESSABLE .", - "Short Dynamic Link suffix is a base62 [0-9A-Za-z] encoded string of\na random generated 96 bit random number, which has a length of 17 chars.\nFor example, \"nlAR8U4SlKRZw1cb2\".\nIt prevents other people from guessing and crawling short Dynamic Links\nthat contain personal identifiable information.", - "Short Dynamic Link suffix is a base62 [0-9A-Za-z] string starting with a\nlength of 4 chars. the length will increase when all the space is\noccupied." - ] + "httpMethod": "GET", + "parameters": { + "durationDays": { + "location": "query", + "format": "int64", + "description": "The span of time requested in days.", + "type": "string" + }, + "dynamicLink": { + "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/firebase" + ], + "flatPath": "v1/{dynamicLink}/linkStats", + "id": "firebasedynamiclinks.getLinkStats", + "path": "v1/{dynamicLink}/linkStats" } - }, - "id": "Suffix" + } + } + }, + "parameters": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "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": { - "gclid": { - "description": "[AdWords autotagging parameter](https://support.google.com/analytics/answer/1033981?hl=en);\nused to measure Google AdWords ads. This value is generated dynamically\nand should never be modified.", - "type": "string" - }, - "utmCampaign": { - "description": "Campaign name; used for keyword analysis to identify a specific product\npromotion or strategic campaign.", - "type": "string" - }, - "utmContent": { - "description": "Campaign content; used for A/B testing and content-targeted ads to\ndifferentiate ads or links that point to the same URL.", - "type": "string" - }, - "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" - } - }, - "id": "GooglePlayAnalytics" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean", + "location": "query" }, - "DynamicLinkInfo": { - "properties": { - "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": { - "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" - }, - "link": { - "description": "The link your app will open, You can specify any URL your app can handle.\nThis link must be a well-formatted URL, be properly URL-encoded, and use\nthe HTTP or HTTPS scheme. See 'link' parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).\n\nRequired.", - "type": "string" - }, - "iosInfo": { - "$ref": "IosInfo", - "description": "iOS related information. See iOS related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - }, - "socialMetaTagInfo": { - "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", - "$ref": "SocialMetaTagInfo" - } - }, - "id": "DynamicLinkInfo", - "description": "Information about a Dynamic Link.", - "type": "object" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "ITunesConnectAnalytics": { - "description": "Parameters for iTunes Connect App Analytics.", - "type": "object", - "properties": { - "at": { - "description": "Affiliate token used to create affiliate-coded links.", - "type": "string" - }, - "mt": { - "description": "iTune media types, including music, podcasts, audiobooks and so on.", - "type": "string" - }, - "ct": { - "description": "Campaign text that developers can optionally add to any link in order to\ntrack sales from a specific marketing campaign.", - "type": "string" - }, - "pt": { - "description": "Provider token that enables analytics for Dynamic Links from within iTunes\nConnect.", - "type": "string" - } - }, - "id": "ITunesConnectAnalytics" + "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": { + "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" + }, + "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": { + "default": "true", + "type": "boolean", + "location": "query", + "description": "Pretty-print response." + }, + "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" } }, - "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://firebasedynamiclinks.googleapis.com/", + "servicePath": "", + "description": "Programmatically creates and manages Firebase Dynamic Links.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "firebasedynamiclinks:v1", + "documentationLink": "https://firebase.google.com/docs/dynamic-links/", + "revision": "20170713", + "discoveryVersion": "v1", + "version_module": "True" } diff --git a/DiscoveryJson/firebaserules_v1.json b/DiscoveryJson/firebaserules_v1.json index 47edf00b12..2815b2d012 100644 --- a/DiscoveryJson/firebaserules_v1.json +++ b/DiscoveryJson/firebaserules_v1.json @@ -1,259 +1,150 @@ { - "canonicalName": "Firebase Rules", - "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/firebase.readonly": { - "description": "View all your Firebase data and settings" - }, - "https://www.googleapis.com/auth/firebase": { - "description": "View and administer all your Firebase data and settings" - } - } - } - }, - "rootUrl": "https://firebaserules.googleapis.com/", - "ownerDomain": "google.com", - "name": "firebaserules", - "batchPath": "batch", - "title": "Firebase Rules API", - "ownerName": "Google", "resources": { "projects": { - "methods": { - "test": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "TestRulesetResponse" - }, - "parameters": { - "name": { - "description": "Tests may either provide `source` or a `Ruleset` resource name.\n\nFor tests against `source`, the resource name must refer to the project:\nFormat: `projects/{project_id}`\n\nFor tests against a `Ruleset`, this must be the `Ruleset` resource name:\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", - "type": "string", - "required": true, - "pattern": "^projects/.+$", - "location": "path" - } - }, - "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}:test", - "path": "v1/{+name}:test", - "id": "firebaserules.projects.test", - "description": "Test `Source` for syntactic and semantic correctness. Issues present, if\nany, will be returned to the caller with a description, severity, and\nsource location.\n\nThe test method may be executed with `Source` or a `Ruleset` name.\nPassing `Source` is useful for unit testing new rules. Passing a `Ruleset`\nname is useful for regression testing an existing rule.\n\nThe following is an example of `Source` that permits users to upload images\nto a bucket bearing their user id and matching the correct metadata:\n\n_*Example*_\n\n // Users are allowed to subscribe and unsubscribe to the blog.\n service firebase.storage {\n match /users/{userId}/images/{imageName} {\n allow write: if userId == request.auth.uid\n && (imageName.matches('*.png$')\n || imageName.matches('*.jpg$'))\n && resource.mimeType.matches('^image/')\n }\n }", - "request": { - "$ref": "TestRulesetRequest" - } - } - }, "resources": { "rulesets": { "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/rulesets", - "path": "v1/{+name}/rulesets", - "id": "firebaserules.projects.rulesets.list", - "description": "List `Ruleset` metadata only and optionally filter the results by `Ruleset`\nname.\n\nThe full `Source` contents of a `Ruleset` may be retrieved with\nGetRuleset.", - "httpMethod": "GET", + "create": { + "httpMethod": "POST", "parameterOrder": [ "name" ], "response": { - "$ref": "ListRulesetsResponse" + "$ref": "Ruleset" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "parameters": { - "filter": { - "description": "`Ruleset` filter. The list method supports filters with restrictions on\n`Ruleset.name`.\n\nFilters on `Ruleset.create_time` should use the `date` function which\nparses strings that conform to the RFC 3339 date/time specifications.\n\nExample: `create_time \u003e date(\"2017-01-01\") AND name=UUID-*`", - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "Next page token for loading the next batch of `Ruleset` instances." - }, "name": { - "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", - "type": "string", - "required": true, "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" + "location": "path", + "description": "Resource name for Project which owns this `Ruleset`.\n\nFormat: `projects/{project_id}`", + "type": "string", + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ] + "flatPath": "v1/projects/{projectsId}/rulesets", + "path": "v1/{+name}/rulesets", + "id": "firebaserules.projects.rulesets.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." }, - "get": { - "description": "Get a `Ruleset` by name including the full `Source` contents.", + "delete": { + "description": "Delete a `Ruleset` by resource name.\n\nIf the `Ruleset` is referenced by a `Release` the operation will fail.", "response": { - "$ref": "Ruleset" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase", - "https://www.googleapis.com/auth/firebase.readonly" - ], + "httpMethod": "DELETE", "parameters": { "name": { - "pattern": "^projects/[^/]+/rulesets/[^/]+$", - "location": "path", - "description": "Resource name for the ruleset to get.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "description": "Resource name for the ruleset to delete.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/rulesets/[^/]+$", + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", - "id": "firebaserules.projects.rulesets.get", + "id": "firebaserules.projects.rulesets.delete", "path": "v1/{+name}" }, - "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.", + "list": { + "httpMethod": "GET", "response": { - "$ref": "Ruleset" + "$ref": "ListRulesetsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" ], "parameters": { + "pageToken": { + "description": "Next page token for loading the next batch of `Ruleset` instances.", + "type": "string", + "location": "query" + }, "name": { + "pattern": "^projects/[^/]+$", "location": "path", - "description": "Resource name for Project which owns this `Ruleset`.\n\nFormat: `projects/{project_id}`", + "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" + "required": true + }, + "pageSize": { + "format": "int32", + "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.", + "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" } }, "flatPath": "v1/projects/{projectsId}/rulesets", - "id": "firebaserules.projects.rulesets.create", - "path": "v1/{+name}/rulesets" + "path": "v1/{+name}/rulesets", + "id": "firebaserules.projects.rulesets.list", + "description": "List `Ruleset` metadata only and optionally filter the results by `Ruleset`\nname.\n\nThe full `Source` contents of a `Ruleset` may be retrieved with\nGetRuleset." }, - "delete": { - "description": "Delete a `Ruleset` by resource name.\n\nIf the `Ruleset` is referenced by a `Release` the operation will fail.", - "httpMethod": "DELETE", + "get": { + "httpMethod": "GET", "parameterOrder": [ "name" ], "response": { - "$ref": "Empty" + "$ref": "Ruleset" }, "parameters": { "name": { - "type": "string", - "required": true, "pattern": "^projects/[^/]+/rulesets/[^/]+$", "location": "path", - "description": "Resource name for the ruleset to delete.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`" + "description": "Resource name for the ruleset to get.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" ], "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", "path": "v1/{+name}", - "id": "firebaserules.projects.rulesets.delete" + "id": "firebaserules.projects.rulesets.get", + "description": "Get a `Ruleset` by name including the full `Source` contents." } } }, "releases": { "methods": { - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], + "delete": { "response": { - "$ref": "Release" - }, - "parameters": { - "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", - "required": true, - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path" - } + "$ref": "Empty" }, - "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.update", - "description": "Update a `Release`.\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": "Release" - } - }, - "create": { - "httpMethod": "POST", + "httpMethod": "DELETE", "parameterOrder": [ "name" ], - "response": { - "$ref": "Release" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", - "type": "string", - "required": true - } - }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/firebase" ], - "flatPath": "v1/projects/{projectsId}/releases", - "path": "v1/{+name}/releases", - "id": "firebaserules.projects.releases.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" - } - }, - "delete": { - "description": "Delete a `Release` by resource name.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "parameters": { "name": { "pattern": "^projects/[^/]+/releases/.+$", @@ -263,13 +154,10 @@ "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", "id": "firebaserules.projects.releases.delete", - "path": "v1/{+name}" + "path": "v1/{+name}", + "description": "Delete a `Release` by resource name." }, "list": { "response": { @@ -279,7 +167,24 @@ "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": { + "pageToken": { + "location": "query", + "description": "Next page token for the next batch of `Release` instances.", + "type": "string" + }, + "name": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", + "type": "string", + "required": true + }, "pageSize": { "format": "int32", "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.", @@ -287,34 +192,19 @@ "location": "query" }, "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" - }, - "pageToken": { "location": "query", - "description": "Next page token for the next batch of `Release` instances.", + "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" - }, - "name": { - "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" } }, - "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", "id": "firebaserules.projects.releases.list", "path": "v1/{+name}/releases", "description": "List the `Release` values for a project. This list may optionally be\nfiltered by `Release` name, `Ruleset` name, `TestSuite` name, or any\ncombination thereof." }, "get": { + "id": "firebaserules.projects.releases.get", + "path": "v1/{+name}", "description": "Get a `Release` by name.", "response": { "$ref": "Release" @@ -323,34 +213,132 @@ "name" ], "httpMethod": "GET", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/releases/.+$", + "location": "path", + "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "type": "string", + "required": true + } + }, "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}" + }, + "update": { + "response": { + "$ref": "Release" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", "parameters": { "name": { "pattern": "^projects/[^/]+/releases/.+$", "location": "path", - "description": "Resource name of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", + "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", "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", - "id": "firebaserules.projects.releases.get", - "path": "v1/{+name}" + "id": "firebaserules.projects.releases.update", + "path": "v1/{+name}", + "description": "Update a `Release`.\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": "Release" + } + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Release" + }, + "parameters": { + "name": { + "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], + "flatPath": "v1/projects/{projectsId}/releases", + "path": "v1/{+name}/releases", + "id": "firebaserules.projects.releases.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" + } } } } + }, + "methods": { + "test": { + "response": { + "$ref": "TestRulesetResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase", + "https://www.googleapis.com/auth/firebase.readonly" + ], + "parameters": { + "name": { + "description": "Tests may either provide `source` or a `Ruleset` resource name.\n\nFor tests against `source`, the resource name must refer to the project:\nFormat: `projects/{project_id}`\n\nFor tests against a `Ruleset`, this must be the `Ruleset` resource name:\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", + "type": "string", + "required": true, + "pattern": "^projects/.+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}:test", + "id": "firebaserules.projects.test", + "path": "v1/{+name}:test", + "request": { + "$ref": "TestRulesetRequest" + }, + "description": "Test `Source` for syntactic and semantic correctness. Issues present, if\nany, will be returned to the caller with a description, severity, and\nsource location.\n\nThe test method may be executed with `Source` or a `Ruleset` name.\nPassing `Source` is useful for unit testing new rules. Passing a `Ruleset`\nname is useful for regression testing an existing rule.\n\nThe following is an example of `Source` that permits users to upload images\nto a bucket bearing their user id and matching the correct metadata:\n\n_*Example*_\n\n // Users are allowed to subscribe and unsubscribe to the blog.\n service firebase.storage {\n match /users/{userId}/images/{imageName} {\n allow write: if userId == request.auth.uid\n && (imageName.matches('*.png$')\n || imageName.matches('*.jpg$'))\n && resource.mimeType.matches('^image/')\n }\n }" + } } } }, "parameters": { - "upload_protocol": { + "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\")." + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, "prettyPrint": { "location": "query", @@ -387,6 +375,8 @@ "type": "string" }, "alt": { + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -398,13 +388,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" - }, - "key": { - "description": "API key. 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": { @@ -412,68 +395,35 @@ "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": { - "default": "true", - "type": "boolean", + "key": { "location": "query", - "description": "Pretty-print response." + "description": "API key. 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" }, - "bearer_token": { + "quotaUser": { "location": "query", - "description": "OAuth bearer token.", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", "type": "string" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" } }, "version": "v1", "baseUrl": "https://firebaserules.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Creates and manages rules that determine when a Firebase Rules-enabled service should permit a request.\n", "servicePath": "", + "description": "Creates and manages rules that determine when a Firebase Rules-enabled service should permit a request.\n", + "kind": "discovery#restDescription", "basePath": "", - "revision": "20170523", "documentationLink": "https://firebase.google.com/docs/storage/security", + "revision": "20170523", "id": "firebaserules:v1", "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" - }, - "FunctionMock": { - "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": { - "$ref": "Result", - "description": "The mock result of the function call." - }, - "args": { - "description": "The list of `Arg` values to match. The order in which the arguments are\nprovided is the order in which they must appear in the function\ninvocation.", - "items": { - "$ref": "Arg" - }, - "type": "array" - } - }, - "id": "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`." - }, "Source": { "description": "`Source` is one or more `File` messages comprising a logical set of rules.", "type": "object", @@ -504,7 +454,6 @@ "type": "object" }, "SourcePosition": { - "type": "object", "properties": { "column": { "format": "int32", @@ -522,23 +471,11 @@ } }, "id": "SourcePosition", - "description": "Position in the `Source` content including its line, column number, and an\nindex of the `File` in the `Source` message. Used for debug purposes." + "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" }, "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": { - "functionMocks": { - "description": "Optional function mocks for service-defined functions. If not set, any\nservice defined function is expected to return an error, which may or may\nnot influence the test outcome.", - "items": { - "$ref": "FunctionMock" - }, - "type": "array" - }, - "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" - }, "expectation": { "enumDescriptions": [ "Unspecified expectation.", @@ -556,17 +493,63 @@ "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" + }, + "functionMocks": { + "description": "Optional function mocks for service-defined functions. If not set, any\nservice defined function is expected to return an error, which may or may\nnot influence the test outcome.", + "items": { + "$ref": "FunctionMock" + }, + "type": "array" + }, + "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" } }, - "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" }, - "Issue": { - "description": "Issues include warnings, errors, and deprecation notices.", + "Ruleset": { + "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time.", + "type": "object", + "properties": { + "createTime": { + "format": "google-datetime", + "description": "Time the `Ruleset` was created.\nOutput only.", + "type": "string" + }, + "name": { + "description": "Name of the `Ruleset`. The ruleset_id is auto generated by the service.\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`\nOutput only.", + "type": "string" + }, + "source": { + "description": "`Source` for the `Ruleset`.", + "$ref": "Source" + } + }, + "id": "Ruleset" + }, + "TestRulesetRequest": { + "description": "The request for FirebaseRulesService.TestRuleset.", "type": "object", + "properties": { + "testSuite": { + "$ref": "TestSuite", + "description": "Inline `TestSuite` to run." + }, + "source": { + "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" + } + }, + "id": "TestRulesetRequest" + }, + "Issue": { "properties": { "sourcePosition": { - "description": "Position of the issue in the `Source`.", - "$ref": "SourcePosition" + "$ref": "SourcePosition", + "description": "Position of the issue in the `Source`." }, "severity": { "enumDescriptions": [ @@ -589,47 +572,47 @@ "type": "string" } }, - "id": "Issue" + "id": "Issue", + "description": "Issues include warnings, errors, and deprecation notices.", + "type": "object" }, - "TestRulesetRequest": { + "ListReleasesResponse": { "properties": { - "testSuite": { - "$ref": "TestSuite", - "description": "Inline `TestSuite` to run." + "releases": { + "description": "List of `Release` instances.", + "items": { + "$ref": "Release" + }, + "type": "array" }, - "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`." + "nextPageToken": { + "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", + "type": "string" } }, - "id": "TestRulesetRequest", - "description": "The request for FirebaseRulesService.TestRuleset.", + "id": "ListReleasesResponse", + "description": "The response for FirebaseRulesService.ListReleases.", "type": "object" }, - "Ruleset": { - "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time.", - "type": "object", + "FunctionCall": { "properties": { - "createTime": { - "format": "google-datetime", - "description": "Time the `Ruleset` was created.\nOutput only.", - "type": "string" - }, - "name": { - "description": "Name of the `Ruleset`. The ruleset_id is auto generated by the service.\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`\nOutput only.", + "function": { + "description": "Name of the function invoked.", "type": "string" }, - "source": { - "$ref": "Source", - "description": "`Source` for the `Ruleset`." + "args": { + "description": "The arguments that were provided to the function.", + "items": { + "type": "any" + }, + "type": "array" } }, - "id": "Ruleset" + "id": "FunctionCall", + "description": "Represents a service-defined function call that was invoked during test\nexecution.", + "type": "object" }, "File": { - "id": "File", - "description": "`File` containing source content.", - "type": "object", "properties": { "fingerprint": { "format": "byte", @@ -644,47 +627,18 @@ "description": "Textual Content.", "type": "string" } - } - }, - "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.", - "items": { - "type": "any" - }, - "type": "array" - }, - "function": { - "description": "Name of the function invoked.", - "type": "string" - } - }, - "id": "FunctionCall" - }, - "ListReleasesResponse": { - "description": "The response for FirebaseRulesService.ListReleases.", - "type": "object", - "properties": { - "releases": { - "description": "List of `Release` instances.", - "items": { - "$ref": "Release" - }, - "type": "array" - }, - "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" + "id": "File", + "description": "`File` containing source content.", + "type": "object" }, "Release": { - "type": "object", "properties": { + "createTime": { + "format": "google-datetime", + "description": "Time the release was created.\nOutput only.", + "type": "string" + }, "updateTime": { "format": "google-datetime", "description": "Time the release was updated.\nOutput only.", @@ -697,15 +651,11 @@ "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" - }, - "createTime": { - "format": "google-datetime", - "description": "Time the release was created.\nOutput only.", - "type": "string" } }, "id": "Release", - "description": "`Release` is a named reference to a `Ruleset`. Once a `Release` refers to a\n`Ruleset`, rules-enabled services will be able to enforce the `Ruleset`." + "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" }, "TestRulesetResponse": { "description": "The response for FirebaseRulesService.TestRuleset.", @@ -747,8 +697,6 @@ "id": "ListRulesetsResponse" }, "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`.", @@ -783,15 +731,17 @@ "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" + "id": "TestResult", + "description": "Test result message containing the state of the test as well as a\ndescription and source position for test failures.", + "type": "object" }, "Arg": { "description": "Arg matchers for the mock function.", "type": "object", "properties": { "anyValue": { - "$ref": "Empty", - "description": "Argument matches any value provided." + "description": "Argument matches any value provided.", + "$ref": "Empty" }, "exactValue": { "description": "Argument exactly matches value provided.", @@ -801,8 +751,6 @@ "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", "properties": { "testCases": { "description": "Collection of test cases associated with the `TestSuite`.", @@ -812,12 +760,64 @@ "type": "array" } }, - "id": "TestSuite" + "id": "TestSuite", + "description": "`TestSuite` is a collection of `TestCase` instances that validate the logical\ncorrectness of a `Ruleset`. The `TestSuite` may be referenced in-line within\na `TestRuleset` invocation or as part of a `Release` object as a pre-release\ncheck.", + "type": "object" + }, + "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" + }, + "FunctionMock": { + "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.", + "items": { + "$ref": "Arg" + }, + "type": "array" + } + }, + "id": "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" } }, + "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": "Firebase Rules", + "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/firebase.readonly": { + "description": "View all your Firebase data and settings" + }, + "https://www.googleapis.com/auth/firebase": { + "description": "View and administer all your Firebase data and settings" + } + } + } + }, + "rootUrl": "https://firebaserules.googleapis.com/", + "ownerDomain": "google.com", + "name": "firebaserules", + "batchPath": "batch", + "title": "Firebase Rules API", + "ownerName": "Google" } diff --git a/DiscoveryJson/flightavailability_v1.json b/DiscoveryJson/flightavailability_v1.json index 1b630558fc..777715627b 100644 --- a/DiscoveryJson/flightavailability_v1.json +++ b/DiscoveryJson/flightavailability_v1.json @@ -1,8 +1,17 @@ { + "kind": "discovery#restDescription", + "description": "The Google Flight Availability API provides flight availability to partner airlines.\n", + "servicePath": "", + "basePath": "", + "id": "flightavailability:v1", + "revision": "20170713", + "documentationLink": "https://devsite.googleplex.com/flightavailability", "discoveryVersion": "v1", "version_module": "True", "schemas": { "FlightavailabilityPartnerAvailAnswersConstraint": { + "description": "Conditions or constraints that apply to a solution.", + "type": "object", "properties": { "segmentIndices": { "description": "Zero-based non-negative index into the list of segments in the original\nquestion.", @@ -13,24 +22,22 @@ "type": "array" } }, - "id": "FlightavailabilityPartnerAvailAnswersConstraint", - "description": "Conditions or constraints that apply to a solution.", - "type": "object" + "id": "FlightavailabilityPartnerAvailAnswersConstraint" }, "FlightavailabilityPartnerAvailAnswers": { "description": "External (public) availability answer.", "type": "object", "properties": { + "narrative": { + "description": "Consists of the sequence of calculations done to produce the questions.", + "type": "string" + }, "answers": { + "description": "One-to-one mapping of answers to questions.", "items": { "$ref": "FlightavailabilityPartnerAvailAnswersAnswer" }, - "type": "array", - "description": "One-to-one mapping of answers to questions." - }, - "narrative": { - "description": "Consists of the sequence of calculations done to produce the questions.", - "type": "string" + "type": "array" } }, "id": "FlightavailabilityPartnerAvailAnswers" @@ -57,6 +64,24 @@ }, "id": "FlightavailabilityPartnerAvailAnswersConstraintWithEquivalence" }, + "FlightavailabilityPartnerAvailQuestions": { + "description": "External (public) availability questions.", + "type": "object", + "properties": { + "questions": { + "description": "Availability questions.", + "items": { + "$ref": "FlightavailabilityPartnerAvailQuestionsQuestion" + }, + "type": "array" + }, + "parameters": { + "$ref": "FlightavailabilityPartnerAvailQuestionsParameters", + "description": "Parameters that apply to all questions." + } + }, + "id": "FlightavailabilityPartnerAvailQuestions" + }, "FlightavailabilityPartnerAvailAnswersSeatCountSeatsFlag": { "description": "Seats flag parameters.", "type": "object", @@ -70,44 +95,22 @@ "type": "boolean" }, "onRequest": { - "type": "boolean", - "description": "Available on request." + "description": "Available on request.", + "type": "boolean" }, "waitlistClosed": { - "type": "boolean", - "description": "Wait list closed." + "description": "Wait list closed.", + "type": "boolean" }, "nonOperating": { - "type": "boolean", - "description": "Non-operating." + "description": "Non-operating.", + "type": "boolean" } }, "id": "FlightavailabilityPartnerAvailAnswersSeatCountSeatsFlag" }, - "FlightavailabilityPartnerAvailQuestions": { - "properties": { - "parameters": { - "description": "Parameters that apply to all questions.", - "$ref": "FlightavailabilityPartnerAvailQuestionsParameters" - }, - "questions": { - "items": { - "$ref": "FlightavailabilityPartnerAvailQuestionsQuestion" - }, - "type": "array", - "description": "Availability questions." - } - }, - "id": "FlightavailabilityPartnerAvailQuestions", - "description": "External (public) availability questions.", - "type": "object" - }, "FlightavailabilityPartnerAvailAnswersAnswer": { "properties": { - "narrative": { - "type": "string", - "description": "Consists of the sequence of calculations done to produce the answer." - }, "foundNoSolution": { "description": "Set to true if no solution is found for the corresponding question.\n\u003cp\u003e\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e We return no solution if AVS returns\nan empty solution or reports an error for that question.\u003caside\u003e\u003c/p\u003e", "type": "boolean" @@ -118,6 +121,10 @@ "$ref": "FlightavailabilityPartnerAvailAnswersSolution" }, "type": "array" + }, + "narrative": { + "description": "Consists of the sequence of calculations done to produce the answer.", + "type": "string" } }, "id": "FlightavailabilityPartnerAvailAnswersAnswer", @@ -141,8 +148,8 @@ "type": "array" }, "salesAirport": { - "type": "string", - "description": "3 to 5 letters." + "description": "3 to 5 letters.", + "type": "string" }, "salesCountry": { "description": "2 to 3 letters.\nDefaults to 'US'.", @@ -158,6 +165,7 @@ "type": "object" }, "FlightavailabilityPartnerAvailAnswersSolution": { + "description": "One solution within an availability answer.", "type": "object", "properties": { "narrative": { @@ -165,8 +173,8 @@ "type": "string" }, "constraints": { - "description": "All constraints that apply to a solution.", - "$ref": "FlightavailabilityPartnerAvailAnswersConstraints" + "$ref": "FlightavailabilityPartnerAvailAnswersConstraints", + "description": "All constraints that apply to a solution." }, "segmentCounts": { "description": "A list of seat counts for one or more segments.", @@ -181,13 +189,17 @@ "type": "string" } }, - "id": "FlightavailabilityPartnerAvailAnswersSolution", - "description": "One solution within an availability answer." + "id": "FlightavailabilityPartnerAvailAnswersSolution" }, "FlightavailabilityDate": { "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": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" + }, "day": { "format": "int32", "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.", @@ -197,11 +209,6 @@ "format": "int32", "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", "type": "integer" - }, - "month": { - "format": "int32", - "description": "Month of year. Must be from 1 to 12.", - "type": "integer" } }, "id": "FlightavailabilityDate" @@ -235,14 +242,7 @@ "id": "FlightavailabilityPartnerAvailAnswersConstraints" }, "FlightavailabilityPartnerAvailAnswersSegmentCounts": { - "description": "A list of seat counts for a segment.", - "type": "object", "properties": { - "segmentIndex": { - "format": "int32", - "description": "Segment index in the original question.", - "type": "integer" - }, "seatCounts": { "description": "A list of seat counts for a segment.", "items": { @@ -253,9 +253,16 @@ "narrative": { "description": "Consists of the sequence of calculations done to produce the segment.", "type": "string" + }, + "segmentIndex": { + "format": "int32", + "description": "Segment index in the original question.", + "type": "integer" } }, - "id": "FlightavailabilityPartnerAvailAnswersSegmentCounts" + "id": "FlightavailabilityPartnerAvailAnswersSegmentCounts", + "description": "A list of seat counts for a segment.", + "type": "object" }, "FlightavailabilityPartnerAvailQuestionsParameters": { "description": "Parameters upon which the questions should be answered.", @@ -283,7 +290,26 @@ }, "id": "FlightavailabilityPartnerAvailQuestionsParameters" }, + "FlightavailabilityPartnerAvailQuestionsQuestion": { + "description": "One availability question.", + "type": "object", + "properties": { + "segments": { + "description": "List of segments to be queried for availability.\n\u003cp\u003e\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e No more than 10 segments per question\nis allowed.\u003c/aside\u003e\u003c/p\u003e", + "items": { + "$ref": "FlightavailabilityPartnerAvailQuestionsSegment" + }, + "type": "array" + }, + "journeyOriginCity": { + "description": "Three-letter abbreviation for the city where the journey originates.", + "type": "string" + } + }, + "id": "FlightavailabilityPartnerAvailQuestionsQuestion" + }, "FlightavailabilityPartnerAvailAnswersSeatCount": { + "description": "Availability count from the seat.", "type": "object", "properties": { "count": { @@ -300,42 +326,19 @@ "$ref": "FlightavailabilityPartnerAvailAnswersSeatCountSeatsFlag" } }, - "id": "FlightavailabilityPartnerAvailAnswersSeatCount", - "description": "Availability count from the seat." - }, - "FlightavailabilityPartnerAvailQuestionsQuestion": { - "type": "object", - "properties": { - "segments": { - "description": "List of segments to be queried for availability.\n\u003cp\u003e\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e No more than 10 segments per question\nis allowed.\u003c/aside\u003e\u003c/p\u003e", - "items": { - "$ref": "FlightavailabilityPartnerAvailQuestionsSegment" - }, - "type": "array" - }, - "journeyOriginCity": { - "description": "Three-letter abbreviation for the city where the journey originates.", - "type": "string" - } - }, - "id": "FlightavailabilityPartnerAvailQuestionsQuestion", - "description": "One availability question." + "id": "FlightavailabilityPartnerAvailAnswersSeatCount" }, "FlightavailabilityPartnerAvailQuestionsSegment": { "description": "A flight segment, also known as leg.", "type": "object", "properties": { - "carrier": { - "description": "Exactly 2 alphanumeric characters.", - "type": "string" - }, "passiveSegment": { "description": "If true, then don't include an availability answer for this segment.\nThe default is \u003ccode\u003efalse\u003c/code\u003e (=include information).\nUseful for multiple segments with married availability, when it would\nonly be desirable to expose availability from a few selected segments.\n\u003cp\u003e\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e \u003ci\u003eMarried availability\u003c/i\u003e refers to\nflight segments that are sold together based on origin and destination,\nbut might not be available if you try to book them separately, segment by\nsegment. For example, a routing from New York via Paris to Cairo might be\navailable when you book a New York-Cairo flight, but an airline might\nrestrict booking the two segments (New York to Paris, and Paris to Cairo)\nseparately.\u003c/aside\u003e\u003cp\u003e", "type": "boolean" }, "departureDate": { - "description": "Departure date for this segment, in the time zone of the origin airport.", - "$ref": "FlightavailabilityDate" + "$ref": "FlightavailabilityDate", + "description": "Departure date for this segment, in the time zone of the origin airport." }, "origin": { "description": "Three-letter code of the origin airport.", @@ -353,14 +356,15 @@ "destination": { "description": "Three-letter code of the destination airport.", "type": "string" + }, + "carrier": { + "description": "Exactly 2 alphanumeric characters.", + "type": "string" } }, "id": "FlightavailabilityPartnerAvailQuestionsSegment" }, "FlightavailabilityPartnerAvailAnswersEquivalentBookingCodes": { - "id": "FlightavailabilityPartnerAvailAnswersEquivalentBookingCodes", - "description": "A set of booking codes considered equivalent.", - "type": "object", "properties": { "bookingCodes": { "description": "Booking code, one or two letters.", @@ -369,7 +373,10 @@ }, "type": "array" } - } + }, + "id": "FlightavailabilityPartnerAvailAnswersEquivalentBookingCodes", + "description": "A set of booking codes considered equivalent.", + "type": "object" } }, "icons": { @@ -389,10 +396,10 @@ "v1": { "methods": { "query": { - "description": "Called by a partner: receives questions, each of which consists of one or\nmore segments, and returns answers with availability data.", "request": { "$ref": "FlightavailabilityPartnerAvailQuestions" }, + "description": "Called by a partner: receives questions, each of which consists of one or\nmore segments, and returns answers with availability data.", "response": { "$ref": "FlightavailabilityPartnerAvailAnswers" }, @@ -407,21 +414,10 @@ } }, "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.", - "default": "true", - "type": "boolean" - }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" }, "oauth_token": { "location": "query", @@ -434,32 +430,32 @@ "location": "query" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query" }, - "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": { + "description": "Selector specifying which fields to include in a partial response.", "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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" ] }, "callback": { @@ -468,8 +464,6 @@ "location": "query" }, "alt": { - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -481,7 +475,9 @@ "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" }, "access_token": { "description": "OAuth access token.", @@ -492,15 +488,19 @@ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", "type": "string", "location": "query" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "location": "query" } }, "version": "v1", - "baseUrl": "https://flightavailability.googleapis.com/", - "servicePath": "", - "description": "The Google Flight Availability API provides flight availability to partner airlines.\n", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://devsite.googleplex.com/flightavailability", - "revision": "20170713", - "id": "flightavailability:v1" + "baseUrl": "https://flightavailability.googleapis.com/" } diff --git a/DiscoveryJson/genomics_v1.json b/DiscoveryJson/genomics_v1.json index a56a8d14c2..05a3791fd4 100644 --- a/DiscoveryJson/genomics_v1.json +++ b/DiscoveryJson/genomics_v1.json @@ -1,3817 +1,3817 @@ { - "schemas": { - "Program": { - "properties": { - "name": { - "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'.", - "type": "string" - }, - "prevProgramId": { - "description": "The ID of the program run before this one.", - "type": "string" - }, - "commandLine": { - "description": "The command line used to run this program.", - "type": "string" - }, - "version": { - "description": "The version of the program run.", - "type": "string" - }, - "id": { - "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", - "type": "string" - } - }, - "id": "Program", - "type": "object" - }, - "CoverageBucket": { - "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", - "properties": { - "range": { - "$ref": "Range", - "description": "The genomic coordinate range spanned by this bucket." + "ownerName": "Google", + "discoveryVersion": "v1", + "resources": { + "referencesets": { + "methods": { + "search": { + "response": { + "$ref": "SearchReferenceSetsResponse" + }, + "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/referencesets/search", + "id": "genomics.referencesets.search", + "path": "v1/referencesets/search", + "description": "Searches for reference sets which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)", + "request": { + "$ref": "SearchReferenceSetsRequest" + } }, - "meanCoverage": { - "format": "float", - "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", - "type": "number" + "get": { + "response": { + "$ref": "ReferenceSet" + }, + "parameterOrder": [ + "referenceSetId" + ], + "httpMethod": "GET", + "parameters": { + "referenceSetId": { + "location": "path", + "description": "The ID of the reference set.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "flatPath": "v1/referencesets/{referenceSetId}", + "id": "genomics.referencesets.get", + "path": "v1/referencesets/{referenceSetId}", + "description": "Gets a reference set.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83)." } } }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", - "type": "object", - "properties": { - "diskNames": { - "description": "The names of the disks that were created for this pipeline.", - "items": { - "type": "string" + "readgroupsets": { + "methods": { + "export": { + "httpMethod": "POST", + "parameterOrder": [ + "readGroupSetId" + ], + "response": { + "$ref": "Operation" }, - "type": "array" - }, - "machineType": { - "description": "The machine type of the instance.", - "type": "string" - }, - "instanceName": { - "description": "The instance on which the operation is running.", - "type": "string" - }, - "zone": { - "description": "The availability zone in which the instance resides.", - "type": "string" - } - }, - "id": "ComputeEngine" - }, - "ExternalId": { - "type": "object", - "properties": { - "sourceName": { - "description": "The name of the source of this data.", - "type": "string" - }, - "id": { - "description": "The id used by the source of this data.", - "type": "string" - } - }, - "id": "ExternalId" - }, - "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.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "name": { - "description": "The name of this reference, for example `22`.", - "type": "string" - }, - "md5checksum": { - "description": "MD5 of the upper-case sequence excluding all whitespace characters (this\nis equivalent to SQ:M5 in SAM). This value is represented in lower case\nhexadecimal format.", - "type": "string" - }, - "id": { - "description": "The server-generated reference ID, unique across all references.", - "type": "string" - }, - "length": { - "format": "int64", - "description": "The length of this reference's sequence.", - "type": "string" - }, - "sourceAccessions": { - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`.", - "items": { - "type": "string" + "parameters": { + "readGroupSetId": { + "location": "path", + "description": "Required. The ID of the read group set to export. The caller must have\nREAD access to this read group set.", + "type": "string", + "required": true + } }, - "type": "array" + "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\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nNote that currently there may be some differences between exported BAM\nfiles and the original BAM file at the time of import. See\nImportReadGroupSets\nfor caveats.", + "request": { + "$ref": "ExportReadGroupSetRequest" + } }, - "sourceUri": { - "type": "string", - "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file." + "search": { + "id": "genomics.readgroupsets.search", + "path": "v1/readgroupsets/search", + "request": { + "$ref": "SearchReadGroupSetsRequest" + }, + "description": "Searches for read group sets matching the criteria.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).", + "response": { + "$ref": "SearchReadGroupSetsResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "parameters": {}, + "flatPath": "v1/readgroupsets/search" }, - "ncbiTaxonId": { - "type": "integer", - "format": "int32", - "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human." - } - } - }, - "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": { - "info": { - "type": "object", - "additionalProperties": { - "items": { - "type": "any" + "patch": { + "description": "Updates a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", + "request": { + "$ref": "ReadGroupSet" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "readGroupSetId" + ], + "response": { + "$ref": "ReadGroupSet" + }, + "parameters": { + "readGroupSetId": { + "description": "The ID of the read group set to be updated. The caller must have WRITE\npermissions to the dataset associated with this read group set.", + "type": "string", + "required": true, + "location": "path" }, - "type": "array" + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" + } }, - "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": { - "enum": [ - "TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "FLAG", - "CHARACTER", - "STRING" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" ], - "description": "The type of data. Possible types include: Integer, Float,\nFlag, Character, and String.", - "type": "string", - "enumDescriptions": [ - "", - "", - "", - "", - "", - "" - ] + "flatPath": "v1/readgroupsets/{readGroupSetId}", + "path": "v1/readgroupsets/{readGroupSetId}", + "id": "genomics.readgroupsets.patch" }, - "value": { - "description": "The value field for simple metadata", - "type": "string" - }, - "id": { - "description": "User-provided ID field, not enforced by this API.\nTwo or more pieces of structured metadata with identical\nid and key fields are considered equivalent.", - "type": "string" - }, - "number": { - "description": "The number of values that can be included in a field described by this\nmetadata.", - "type": "string" - }, - "key": { - "description": "The top-level key.", - "type": "string" - }, - "description": { - "description": "A textual description of this metadata.", - "type": "string" - } - }, - "id": "VariantSetMetadata" - }, - "SearchVariantSetsRequest": { - "description": "The search variant sets 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" - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "type": "integer" - }, - "datasetIds": { - "items": { - "type": "string" + "get": { + "path": "v1/readgroupsets/{readGroupSetId}", + "id": "genomics.readgroupsets.get", + "description": "Gets a read group set by ID.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "httpMethod": "GET", + "response": { + "$ref": "ReadGroupSet" }, - "type": "array", - "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned." - } - }, - "id": "SearchVariantSetsRequest" - }, - "SearchReferenceSetsRequest": { - "type": "object", - "properties": { - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", - "type": "integer" - }, - "assemblyId": { - "description": "If present, return reference sets for which a substring of their\n`assemblyId` matches this string (case insensitive).", - "type": "string" - }, - "md5checksums": { - "description": "If present, return reference sets for which the\nmd5checksum matches exactly.", - "items": { - "type": "string" + "parameterOrder": [ + "readGroupSetId" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "parameters": { + "readGroupSetId": { + "location": "path", + "description": "The ID of the read group set.", + "type": "string", + "required": true + } }, - "type": "array" + "flatPath": "v1/readgroupsets/{readGroupSetId}" }, - "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" + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "readGroupSetId" + ], + "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.", + "type": "string", + "required": true + } + }, + "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.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" }, - "accessions": { - "description": "If present, return reference sets for which a prefix of any of\nsourceAccessions\nmatch any of these strings. Accession numbers typically have a main number\nand a version, for example `NC_000001.11`.", - "items": { - "type": "string" + "import": { + "request": { + "$ref": "ImportReadGroupSetsRequest" }, - "type": "array" + "description": "Creates read group sets by asynchronously importing the provided\ninformation.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe caller must have WRITE permissions to the dataset.\n\n## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import\n\n- Tags will be converted to strings - tag types are not preserved\n- Comments (`@CO`) in the input file header will not be preserved\n- Original header order of references (`@SQ`) will not be preserved\n- Any reverse stranded unmapped reads will be reverse complemented, and\ntheir qualities (also the \"BQ\" and \"OQ\" tags, if any) will be reversed\n- Unmapped reads will be stripped of positional information (reference name\nand position)", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": {}, + "flatPath": "v1/readgroupsets:import", + "id": "genomics.readgroupsets.import", + "path": "v1/readgroupsets:import" } }, - "id": "SearchReferenceSetsRequest" - }, - "SetIamPolicyRequest": { - "id": "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" + "resources": { + "coveragebuckets": { + "methods": { + "list": { + "path": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", + "id": "genomics.readgroupsets.coveragebuckets.list", + "description": "Lists fixed width coverage buckets for a read group set, each of which\ncorrespond to a range of a reference sequence. Each bucket summarizes\ncoverage information across its corresponding genomic range.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nCoverage is defined as the number of reads which are aligned to a given\nbase in the reference sequence. Coverage buckets are available at several\nprecomputed bucket widths, enabling retrieval of various coverage 'zoom\nlevels'. The caller must have READ permissions for the target read group\nset.", + "httpMethod": "GET", + "response": { + "$ref": "ListCoverageBucketsResponse" + }, + "parameterOrder": [ + "readGroupSetId" + ], + "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.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 2048.", + "type": "integer", + "location": "query" + }, + "start": { + "format": "int64", + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified. Defaults to 0.", + "type": "string", + "location": "query" + }, + "targetBucketWidth": { + "format": "int64", + "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.", + "type": "string", + "location": "query" + }, + "readGroupSetId": { + "description": "Required. The ID of the read group set over which coverage is requested.", + "type": "string", + "required": true, + "location": "path" + }, + "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", + "format": "int64", + "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.", + "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" + } + } } } }, - "MergeVariantsRequest": { - "type": "object", - "properties": { - "variants": { - "description": "The variants to be merged with existing variants.", - "items": { - "$ref": "Variant" - }, - "type": "array" - }, - "infoMergeConfig": { - "additionalProperties": { - "enum": [ - "INFO_MERGE_OPERATION_UNSPECIFIED", - "IGNORE_NEW", - "MOVE_TO_CALLS" - ], - "type": "string" + "reads": { + "methods": { + "search": { + "response": { + "$ref": "SearchReadsResponse" }, - "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them.", - "type": "object" - }, - "variantSetId": { - "description": "The destination variant set.", - "type": "string" + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "flatPath": "v1/reads/search", + "id": "genomics.reads.search", + "path": "v1/reads/search", + "description": "Gets a list of reads for one or more read group sets.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nReads search operates over a genomic coordinate space of reference sequence\n& 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).", + "request": { + "$ref": "SearchReadsRequest" + } } - }, - "id": "MergeVariantsRequest" + } }, - "Read": { - "description": "A read alignment describes a linear alignment of a string of DNA to a\nreference sequence, in addition to metadata\nabout the fragment (the molecule of DNA sequenced) and the read (the bases\nwhich were read by the sequencer). A read is equivalent to a line in a SAM\nfile. A read belongs to exactly one read group and exactly one\nread group set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\n### Reverse-stranded reads\n\nMapped reads (reads having a non-null `alignment`) can be aligned to either\nthe forward or the reverse strand of their associated reference. Strandedness\nof a mapped read is encoded by `alignment.position.reverseStrand`.\n\nIf we consider the reference to be a forward-stranded coordinate space of\n`[0, reference.length)` with `0` as the left-most position and\n`reference.length` as the right-most position, reads are always aligned left\nto right. That is, `alignment.position.position` always refers to the\nleft-most reference coordinate and `alignment.cigar` describes the alignment\nof this read to the reference from left to right. All per-base fields such as\n`alignedSequence` and `alignedQuality` share this same left-to-right\norientation; this is true of reads which are aligned to either strand. For\nreverse-stranded reads, this means that `alignedSequence` is the reverse\ncomplement of the bases that were originally reported by the sequencing\nmachine.\n\n### Generating a reference-aligned sequence string\n\nWhen interacting with mapped reads, it's often useful to produce a string\nrepresenting the local alignment of the read to reference. The following\npseudocode demonstrates one way of doing this:\n\n out = \"\"\n offset = 0\n for c in read.alignment.cigar {\n switch c.operation {\n case \"ALIGNMENT_MATCH\", \"SEQUENCE_MATCH\", \"SEQUENCE_MISMATCH\":\n out += read.alignedSequence[offset:offset+c.operationLength]\n offset += c.operationLength\n break\n case \"CLIP_SOFT\", \"INSERT\":\n offset += c.operationLength\n break\n case \"PAD\":\n out += repeat(\"*\", c.operationLength)\n break\n case \"DELETE\":\n out += repeat(\"-\", c.operationLength)\n break\n case \"SKIP\":\n out += repeat(\" \", c.operationLength)\n break\n case \"CLIP_HARD\":\n break\n }\n }\n return out\n\n### Converting to SAM's CIGAR string\n\nThe following pseudocode generates a SAM CIGAR string from the\n`cigar` field. Note that this is a lossy conversion\n(`cigar.referenceSequence` is lost).\n\n cigarMap = {\n \"ALIGNMENT_MATCH\": \"M\",\n \"INSERT\": \"I\",\n \"DELETE\": \"D\",\n \"SKIP\": \"N\",\n \"CLIP_SOFT\": \"S\",\n \"CLIP_HARD\": \"H\",\n \"PAD\": \"P\",\n \"SEQUENCE_MATCH\": \"=\",\n \"SEQUENCE_MISMATCH\": \"X\",\n }\n cigarStr = \"\"\n for c in read.alignment.cigar {\n cigarStr += c.operationLength + cigarMap[c.operation]\n }\n return cigarStr", - "type": "object", - "properties": { - "readNumber": { - "format": "int32", - "description": "The read number in sequencing. 0-based and less than numberReads. This\nfield replaces SAM flag 0x40 and 0x80.", - "type": "integer" - }, - "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" - }, - "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" - }, - "nextMatePosition": { - "$ref": "Position", - "description": "The mapping of the primary alignment of the\n`(readNumber+1)%numberReads` read in the fragment. It replaces\nmate position and mate strand in SAM." - }, - "info": { - "additionalProperties": { - "items": { - "type": "any" - }, - "type": "array" - }, - "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object" - }, - "properPlacement": { - "description": "The orientation and the distance between reads from the fragment are\nconsistent with the sequencing protocol (SAM flag 0x2).", - "type": "boolean" - }, - "supplementaryAlignment": { - "description": "Whether this alignment is supplementary. Equivalent to SAM flag 0x800.\nSupplementary alignments are used in the representation of a chimeric\nalignment. In a chimeric alignment, a read is split into multiple\nlinear alignments that map to different reference contigs. The first\nlinear alignment in the read will be designated as the representative\nalignment; the remaining linear alignments will be designated as\nsupplementary alignments. These alignments may have different mapping\nquality scores. In each linear alignment in a chimeric alignment, the read\nwill be hard clipped. The `alignedSequence` and\n`alignedQuality` fields in the alignment record will only\nrepresent the bases for its respective linear alignment.", - "type": "boolean" - }, - "fragmentLength": { - "format": "int32", - "description": "The observed length of the fragment, equivalent to TLEN in SAM.", - "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.", - "items": { - "format": "int32", - "type": "integer" + "callsets": { + "methods": { + "create": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "CallSet" }, - "type": "array" - }, - "alignment": { - "$ref": "LinearAlignment", - "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads." - }, - "numberReads": { - "type": "integer", - "format": "int32", - "description": "The number of reads in the fragment (extension to SAM flag 0x1)." - }, - "id": { - "type": "string", - "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`." - }, - "secondaryAlignment": { - "description": "Whether this alignment is secondary. Equivalent to SAM flag 0x100.\nA secondary alignment represents an alternative to the primary alignment\nfor this read. Aligners may return secondary alignments if a read can map\nambiguously to multiple coordinates in the genome. By convention, each read\nhas one and only one alignment where both `secondaryAlignment`\nand `supplementaryAlignment` are false.", - "type": "boolean" - }, - "fragmentName": { - "description": "The fragment name. Equivalent to QNAME (query template name) in SAM.", - "type": "string" - }, - "readGroupSetId": { - "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", - "type": "string" + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/callsets", + "path": "v1/callsets", + "id": "genomics.callsets.create", + "description": "Creates a new call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "request": { + "$ref": "CallSet" + } }, - "duplicateFragment": { - "description": "The fragment is a PCR or optical duplicate (SAM flag 0x400).", - "type": "boolean" - } - }, - "id": "Read" - }, - "BatchCreateAnnotationsRequest": { - "type": "object", - "properties": { - "annotations": { - "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", - "items": { - "$ref": "Annotation" + "delete": { + "id": "genomics.callsets.delete", + "path": "v1/callsets/{callSetId}", + "description": "Deletes a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "Empty" }, - "type": "array" - }, - "requestId": { - "description": "A unique request ID which enables the server to detect duplicated requests.\nIf provided, duplicated requests will result in the same response; if not\nprovided, duplicated requests may result in duplicated data. For a given\nannotation set, callers should not reuse `request_id`s when writing\ndifferent batches of annotations - behavior in this case is undefined.\nA common approach is to use a UUID. For batch jobs where worker crashes are\na possibility, consider using some unique variant of a worker or run ID.", - "type": "string" - } - }, - "id": "BatchCreateAnnotationsRequest" - }, - "CigarUnit": { - "description": "A single CIGAR operation.", - "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" - }, - "operationLength": { - "format": "int64", - "description": "The number of genomic bases that the operation runs for. Required.", - "type": "string" - }, - "operation": { - "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`." + "parameterOrder": [ + "callSetId" ], - "enum": [ - "OPERATION_UNSPECIFIED", - "ALIGNMENT_MATCH", - "INSERT", - "DELETE", - "SKIP", - "CLIP_SOFT", - "CLIP_HARD", - "PAD", - "SEQUENCE_MATCH", - "SEQUENCE_MISMATCH" + "httpMethod": "DELETE", + "parameters": { + "callSetId": { + "location": "path", + "description": "The ID of the call set to be deleted.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" ], - "type": "string" - } - }, - "id": "CigarUnit" - }, - "ReferenceSet": { - "description": "A reference set is a set of references which typically comprise a reference\nassembly for a species, such as `GRCh38` which is representative\nof the human genome. A reference set defines a common coordinate space for\ncomparing reference-aligned experimental data. A reference set contains 1 or\nmore references.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "ncbiTaxonId": { - "format": "int32", - "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.", - "type": "integer" - }, - "sourceUri": { - "description": "The URI from which the references were obtained.", - "type": "string" + "flatPath": "v1/callsets/{callSetId}" }, - "referenceIds": { - "description": "The IDs of the reference objects that are part of this set.\n`Reference.md5checksum` must be unique within this set.", - "items": { - "type": "string" + "search": { + "response": { + "$ref": "SearchCallSetsResponse" }, - "type": "array" - }, - "assemblyId": { - "description": "Public id of this reference set, such as `GRCh37`.", - "type": "string" - }, - "md5checksum": { - "description": "Order-independent MD5 checksum which identifies this reference set. The\nchecksum is computed by sorting all lower case hexidecimal string\n`reference.md5checksum` (for all reference in this set) in\nascending lexicographic order, concatenating, and taking the MD5 of that\nvalue. The resulting value is represented in lower case hexadecimal format.", - "type": "string" - }, - "id": { - "type": "string", - "description": "The server-generated reference set ID, unique across all reference sets." - }, - "sourceAccessions": { - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`.", - "items": { - "type": "string" + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "parameters": {}, + "flatPath": "v1/callsets/search", + "id": "genomics.callsets.search", + "path": "v1/callsets/search", + "request": { + "$ref": "SearchCallSetsRequest" }, - "type": "array" + "description": "Gets a list of call sets matching the criteria.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178)." }, - "description": { - "description": "Free text description of this reference set.", - "type": "string" - } - }, - "id": "ReferenceSet" - }, - "Transcript": { - "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.", - "items": { - "$ref": "Exon" + "get": { + "response": { + "$ref": "CallSet" }, - "type": "array" + "parameterOrder": [ + "callSetId" + ], + "httpMethod": "GET", + "parameters": { + "callSetId": { + "description": "The ID of the call set.", + "type": "string", + "required": true, + "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}", + "description": "Gets a call set by ID.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" }, - "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": { - "type": "string", - "description": "The annotation ID of the gene from which this transcript is transcribed." - } - }, - "id": "Transcript", - "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA." - }, - "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": { - "datasetId": { - "description": "The dataset to which this annotation set belongs.", - "type": "string" - }, - "sourceUri": { - "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", - "type": "string" - }, - "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.", - "type": "string" - }, - "info": { - "additionalProperties": { - "items": { - "type": "any" + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "callSetId" + ], + "response": { + "$ref": "CallSet" + }, + "parameters": { + "callSetId": { + "description": "The ID of the call set to be updated.", + "type": "string", + "required": true, + "location": "path" }, - "type": "array" + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" + } }, - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" ], - "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." - ] - }, - "id": { - "type": "string", - "description": "The server-generated annotation set ID, unique across all annotation sets." + "flatPath": "v1/callsets/{callSetId}", + "path": "v1/callsets/{callSetId}", + "id": "genomics.callsets.patch", + "description": "Updates a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", + "request": { + "$ref": "CallSet" + } } - }, - "id": "AnnotationSet" + } }, - "Experiment": { - "properties": { - "platformUnit": { - "type": "string", - "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." + "annotationsets": { + "methods": { + "delete": { + "id": "genomics.annotationsets.delete", + "path": "v1/annotationsets/{annotationSetId}", + "description": "Deletes an annotation set. Caller must have WRITE permission\nfor the associated annotation set.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "annotationSetId" + ], + "httpMethod": "DELETE", + "parameters": { + "annotationSetId": { + "location": "path", + "description": "The ID of the annotation set to be deleted.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotationsets/{annotationSetId}" }, - "instrumentModel": { - "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", - "type": "string" + "search": { + "id": "genomics.annotationsets.search", + "path": "v1/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.", + "request": { + "$ref": "SearchAnnotationSetsRequest" + }, + "response": { + "$ref": "SearchAnnotationSetsResponse" + }, + "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" }, - "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" + "get": { + "description": "Gets an annotation set. Caller must have READ permission for\nthe associated dataset.", + "httpMethod": "GET", + "response": { + "$ref": "AnnotationSet" + }, + "parameterOrder": [ + "annotationSetId" + ], + "parameters": { + "annotationSetId": { + "description": "The ID of the annotation set to be retrieved.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "flatPath": "v1/annotationsets/{annotationSetId}", + "path": "v1/annotationsets/{annotationSetId}", + "id": "genomics.annotationsets.get" }, - "sequencingCenter": { - "type": "string", - "description": "The sequencing center used as part of this experiment." - } - }, - "id": "Experiment", - "type": "object" - }, - "ListDatasetsResponse": { - "description": "The dataset list response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" + "update": { + "response": { + "$ref": "AnnotationSet" + }, + "parameterOrder": [ + "annotationSetId" + ], + "httpMethod": "PUT", + "parameters": { + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "annotationSetId": { + "description": "The ID of the annotation set to be updated.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotationsets/{annotationSetId}", + "id": "genomics.annotationsets.update", + "path": "v1/annotationsets/{annotationSetId}", + "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" + } }, - "datasets": { - "description": "The list of matching Datasets.", - "items": { - "$ref": "Dataset" + "create": { + "path": "v1/annotationsets", + "id": "genomics.annotationsets.create", + "description": "Creates a new annotation set. Caller must have WRITE permission for the\nassociated dataset.\n\nThe following fields are required:\n\n * datasetId\n * referenceSetId\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field).", + "request": { + "$ref": "AnnotationSet" }, - "type": "array" - } - }, - "id": "ListDatasetsResponse" - }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "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`", - "items": { - "type": "string" + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnnotationSet" }, - "type": "array" + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotationsets" } - }, - "id": "TestIamPermissionsRequest" + } }, - "Exon": { - "type": "object", - "properties": { - "start": { - "type": "string", - "format": "int64", - "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." - }, - "frame": { - "format": "int32", - "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.", - "type": "integer" - }, - "end": { - "format": "int64", - "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.", - "type": "string" - } - }, - "id": "Exon" - }, - "ExportReadGroupSetRequest": { - "id": "ExportReadGroupSetRequest", - "description": "The read group set export request.", - "type": "object", - "properties": { - "referenceNames": { - "description": "The reference names to export. If this is not specified, all reference\nsequences, including unmapped reads, are exported.\nUse `*` to export only unmapped reads.", - "items": { - "type": "string" + "variants": { + "methods": { + "search": { + "description": "Gets a list of variants matching the criteria.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", + "request": { + "$ref": "SearchVariantsRequest" }, - "type": "array" - }, - "exportUri": { - "type": "string", - "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." - }, - "projectId": { - "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", - "type": "string" - } - } - }, - "CallSet": { - "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "sampleId": { - "description": "The sample ID this call set corresponds to.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The call set name." + "response": { + "$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.readonly" + ], + "flatPath": "v1/variants/search", + "id": "genomics.variants.search", + "path": "v1/variants/search" }, - "info": { - "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": { - "items": { - "type": "any" + "patch": { + "id": "genomics.variants.patch", + "path": "v1/variants/{variantId}", + "request": { + "$ref": "Variant" + }, + "description": "Updates a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", + "response": { + "$ref": "Variant" + }, + "parameterOrder": [ + "variantId" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" }, - "type": "array" - } - }, - "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).", - "items": { - "type": "string" + "variantId": { + "description": "The ID of the variant to be updated.", + "type": "string", + "required": true, + "location": "path" + } }, - "type": "array" - }, - "id": { - "description": "The server-generated call set ID, unique across all call sets.", - "type": "string" - }, - "created": { - "format": "int64", - "description": "The date this call set was created in milliseconds from the epoch.", - "type": "string" - } - }, - "id": "CallSet" - }, - "SearchAnnotationSetsResponse": { - "id": "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" + "flatPath": "v1/variants/{variantId}" }, - "annotationSets": { - "description": "The matching annotation sets.", - "items": { - "$ref": "AnnotationSet" + "get": { + "path": "v1/variants/{variantId}", + "id": "genomics.variants.get", + "description": "Gets a variant by ID.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "httpMethod": "GET", + "response": { + "$ref": "Variant" }, - "type": "array" - } - } - }, - "ImportVariantsRequest": { - "properties": { - "normalizeReferenceNames": { - "description": "Convert reference names to the canonical representation.\nhg19 haploytypes (those reference names containing \"_hap\")\nare not modified in any way.\nAll other reference names are modified according to the following rules:\nThe reference name is capitalized.\nThe \"chr\" prefix is dropped for all autosomes and sex chromsomes.\nFor example \"chr17\" becomes \"17\" and \"chrX\" becomes \"X\".\nAll mitochondrial chromosomes (\"chrM\", \"chrMT\", etc) become \"MT\".", - "type": "boolean" - }, - "format": { - "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." + "parameterOrder": [ + "variantId" ], - "enum": [ - "FORMAT_UNSPECIFIED", - "FORMAT_VCF", - "FORMAT_COMPLETE_GENOMICS" + "parameters": { + "variantId": { + "description": "The ID of the variant.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "description": "The format of the variant data being imported. If unspecified, defaults to\nto `VCF`.", - "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", - "additionalProperties": { - "enum": [ - "INFO_MERGE_OPERATION_UNSPECIFIED", - "IGNORE_NEW", - "MOVE_TO_CALLS" - ], - "type": "string" - } + "flatPath": "v1/variants/{variantId}" }, - "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.", - "items": { - "type": "string" + "delete": { + "id": "genomics.variants.delete", + "path": "v1/variants/{variantId}", + "description": "Deletes a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "Empty" }, - "type": "array" - }, - "variantSetId": { - "description": "Required. The variant set to which variant data should be imported.", - "type": "string" - } - }, - "id": "ImportVariantsRequest", - "description": "The variant data import request.", - "type": "object" - }, - "VariantAnnotation": { - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "", - "`TYPE_OTHER` should be used when no other Type will suffice.\nFurther explanation of the variant type may be included in the\ninfo field.", - "`INSERTION` indicates an insertion.", - "`DELETION` indicates a deletion.", - "`SUBSTITUTION` indicates a block substitution of\ntwo or more nucleotides.", - "`SNP` indicates a single nucleotide polymorphism.", - "`STRUCTURAL` indicates a large structural variant,\nincluding chromosomal fusions, inversions, etc.", - "`CNV` indicates a variation in copy number." + "parameterOrder": [ + "variantId" ], - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_OTHER", - "INSERTION", - "DELETION", - "SUBSTITUTION", - "SNP", - "STRUCTURAL", - "CNV" + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" ], - "description": "Type has been adapted from ClinVar's list of variant types.", - "type": "string" + "parameters": { + "variantId": { + "description": "The ID of the variant to be deleted.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/variants/{variantId}" }, - "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" + "merge": { + "request": { + "$ref": "MergeVariantsRequest" + }, + "description": "Merges the given variants with existing variants.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach variant will be\nmerged with an existing variant that matches its reference sequence,\nstart, end, reference bases, and alternative bases. If no such variant\nexists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant. Variant info fields are merged as\nspecified in the\ninfoMergeConfig\nfield of the MergeVariantsRequest.\n\nPlease exercise caution when using this method! It is easy to introduce\nmistakes in existing variants and difficult to back out of them. For\nexample,\nsuppose you were trying to merge a new variant with an existing one and\nboth\nvariants contain calls that belong to callsets with the same callset ID.\n\n // Existing variant - irrelevant fields trimmed for clarity\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 0,\n 1\n ],\n }\n ]\n }\n\n // New variant with conflicting call information\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThe resulting merged variant would overwrite the existing calls with those\nfrom the new variant:\n\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThis may be the desired outcome, but it is up to the user to determine if\nif that is indeed the case.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": {}, + "flatPath": "v1/variants:merge", + "id": "genomics.variants.merge", + "path": "v1/variants:merge" }, - "geneId": { - "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", - "type": "string" - }, - "clinicalSignificance": { - "type": "string", - "enumDescriptions": [ - "", - "`OTHER` should be used when no other clinical significance\nvalue will suffice.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "`MULTIPLE_REPORTED` should be used when multiple clinical\nsignficances are reported for a variant. The original clinical\nsignificance values may be provided in the `info` field." - ], - "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.", - "items": { - "$ref": "ClinicalCondition" + "import": { + "path": "v1/variants:import", + "id": "genomics.variants.import", + "description": "Creates variant data by asynchronously importing the provided information.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe variants for import will be merged with any existing variant that\nmatches its reference sequence, start, end, reference bases, and\nalternative bases. If no such variant exists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant, and Variant info fields are merged\nas specified in\ninfoMergeConfig.\nAs a special case, for single-sample VCF files, QUAL and FILTER fields will\nbe moved to the call level; these are sometimes interpreted in a\ncall-specific context.\nImported VCF headers are appended to the metadata already in a variant set.", + "request": { + "$ref": "ImportVariantsRequest" }, - "type": "array" - }, - "effect": { - "enumDescriptions": [ - "", - "`EFFECT_OTHER` should be used when no other Effect\nwill suffice.", - "`FRAMESHIFT` indicates a mutation in which the insertion or\ndeletion of nucleotides resulted in a frameshift change.", - "`FRAME_PRESERVING_INDEL` indicates a mutation in which a\nmultiple of three nucleotides has been inserted or deleted, resulting\nin no change to the reading frame of the coding sequence.", - "`SYNONYMOUS_SNP` indicates a single nucleotide polymorphism\nmutation that results in no amino acid change.", - "`NONSYNONYMOUS_SNP` indicates a single nucleotide\npolymorphism mutation that results in an amino acid change.", - "`STOP_GAIN` indicates a mutation that leads to the creation\nof a stop codon at the variant site. Frameshift mutations creating\ndownstream stop codons do not count as `STOP_GAIN`.", - "`STOP_LOSS` indicates a mutation that eliminates a\nstop codon at the variant site.", - "`SPLICE_SITE_DISRUPTION` indicates that this variant is\nfound in a splice site for the associated transcript, and alters the\nnormal splicing pattern." - ], - "enum": [ - "EFFECT_UNSPECIFIED", - "EFFECT_OTHER", - "FRAMESHIFT", - "FRAME_PRESERVING_INDEL", - "SYNONYMOUS_SNP", - "NONSYNONYMOUS_SNP", - "STOP_GAIN", - "STOP_LOSS", - "SPLICE_SITE_DISRUPTION" + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.read_write", + "https://www.googleapis.com/auth/genomics" ], - "description": "Effect of the variant on the coding sequence.", - "type": "string" + "flatPath": "v1/variants:import" }, - "transcriptIds": { - "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", - "items": { - "type": "string" + "create": { + "id": "genomics.variants.create", + "path": "v1/variants", + "request": { + "$ref": "Variant" }, - "type": "array" - } - }, - "id": "VariantAnnotation" - }, - "ListCoverageBucketsResponse": { - "type": "object", - "properties": { - "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.", - "items": { - "$ref": "CoverageBucket" + "description": "Creates a new variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "Variant" }, - "type": "array" - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - }, - "bucketWidth": { - "format": "int64", - "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`).", - "type": "string" + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": {}, + "flatPath": "v1/variants" } - }, - "id": "ListCoverageBucketsResponse" + } }, - "ExportVariantSetRequest": { - "description": "The variant data export request.", - "type": "object", - "properties": { - "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" - }, - "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" - }, - "format": { - "enumDescriptions": [ - "", - "Export the data to Google BigQuery." - ], - "enum": [ - "FORMAT_UNSPECIFIED", - "FORMAT_BIGQUERY" + "references": { + "methods": { + "search": { + "id": "genomics.references.search", + "path": "v1/references/search", + "request": { + "$ref": "SearchReferencesRequest" + }, + "description": "Searches for references which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferences](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L146).", + "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" ], - "description": "The format for the exported data.", - "type": "string" - }, - "projectId": { - "description": "Required. The Google Cloud project ID that owns the destination\nBigQuery dataset. The caller must have WRITE access to this project. This\nproject will also own the resulting export job.", - "type": "string" + "parameters": {}, + "flatPath": "v1/references/search" }, - "callSetIds": { - "description": "If provided, only variant call information from the specified call sets\nwill be exported. By default all variant calls are exported.", - "items": { - "type": "string" + "get": { + "id": "genomics.references.get", + "path": "v1/references/{referenceId}", + "description": "Gets a reference.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReference](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L158).", + "response": { + "$ref": "Reference" }, - "type": "array" - } - }, - "id": "ExportVariantSetRequest" - }, - "SearchAnnotationsRequest": { - "type": "object", - "properties": { - "referenceId": { - "description": "The ID of the reference to query.", - "type": "string" - }, - "end": { - "format": "int64", - "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.", - "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": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", - "type": "integer" - }, - "start": { - "format": "int64", - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified,\nreferenceId or\nreferenceName\nmust be specified. Defaults to 0.", - "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.", - "items": { - "type": "string" + "parameterOrder": [ + "referenceId" + ], + "httpMethod": "GET", + "parameters": { + "referenceId": { + "location": "path", + "description": "The ID of the reference.", + "type": "string", + "required": true + } }, - "type": "array" - }, - "referenceName": { - "description": "The name of the reference to query, within the reference set associated\nwith this query.", - "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": "SearchAnnotationsRequest" - }, - "OperationEvent": { - "description": "An event that occurred during an Operation.", - "type": "object", - "properties": { - "startTime": { - "format": "google-datetime", - "description": "Optional time of when event started.", - "type": "string" - }, - "description": { - "description": "Required description of event.", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "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.", - "type": "string" - } - }, - "id": "OperationEvent" - }, - "CodingSequence": { - "type": "object", - "properties": { - "end": { - "type": "string", - "format": "int64", - "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." - }, - "start": { - "format": "int64", - "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.", - "type": "string" + "resources": { + "bases": { + "methods": { + "list": { + "response": { + "$ref": "ListBasesResponse" + }, + "parameterOrder": [ + "referenceId" + ], + "httpMethod": "GET", + "parameters": { + "start": { + "location": "query", + "format": "int64", + "description": "The start position (0-based) of this query. Defaults to 0.", + "type": "string" + }, + "referenceId": { + "location": "path", + "description": "The ID of the reference.", + "type": "string", + "required": true + }, + "end": { + "location": "query", + "format": "int64", + "description": "The end position (0-based, exclusive) of this query. Defaults to the length\nof this reference.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "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).", + "type": "integer" + } + }, + "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}/bases", + "id": "genomics.references.bases.list", + "path": "v1/references/{referenceId}/bases", + "description": "Lists the bases in a reference, optionally restricted to a range.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceBases](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L221)." + } + } } - }, - "id": "CodingSequence" + } }, - "SearchReferencesResponse": { - "type": "object", - "properties": { - "references": { - "description": "The matching references.", - "items": { - "$ref": "Reference" + "datasets": { + "methods": { + "setIamPolicy": { + "id": "genomics.datasets.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "description": "Sets the access control policy on the specified dataset. Replaces any\nexisting policy.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", + "request": { + "$ref": "SetIamPolicyRequest" }, - "type": "array" - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "SearchReferencesResponse" - }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "TestIamPermissionsResponse": { - "properties": { - "permissions": { - "items": { - "type": "string" + "response": { + "$ref": "Policy" }, - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed." - } - }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", - "type": "object" - }, - "SearchAnnotationSetsRequest": { - "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" - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 128. The maximum value is 1024.", - "type": "integer" - }, - "datasetIds": { - "description": "Required. The dataset IDs to search within. Caller must have `READ` access\nto these datasets.", - "items": { - "type": "string" + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "pattern": "^datasets/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "type": "string", + "required": true + } }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/datasets/{datasetsId}:setIamPolicy" }, - "types": { - "description": "If specified, only annotation sets that have any of these types are\nreturned.", - "items": { - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" - ], - "type": "string" + "create": { + "path": "v1/datasets", + "id": "genomics.datasets.create", + "description": "Creates a new dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "request": { + "$ref": "Dataset" }, - "type": "array", - "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": { - "description": "If specified, only annotation sets associated with the given reference set\nare returned.", - "type": "string" - } - }, - "id": "SearchAnnotationSetsRequest" - }, - "SearchReadGroupSetsResponse": { - "description": "The read group set search response.", - "type": "object", - "properties": { - "readGroupSets": { - "description": "The list of matching read group sets.", - "items": { - "$ref": "ReadGroupSet" + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Dataset" }, - "type": "array" + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/datasets" }, - "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": "SearchReadGroupSetsResponse" - }, - "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": { - "cigar": { - "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference.", - "items": { - "$ref": "CigarUnit" + "getIamPolicy": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Policy" }, - "type": "array" - }, - "position": { - "description": "The position of this alignment.", - "$ref": "Position" - }, - "mappingQuality": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "LinearAlignment" - }, - "SearchReferencesRequest": { - "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" - }, - "accessions": { - "description": "If present, return references for which a prefix of any of\nsourceAccessions match\nany of these strings. Accession numbers typically have a main number and a\nversion, for example `GCF_000001405.26`.", - "items": { - "type": "string" + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "type": "string", + "required": true, + "pattern": "^datasets/[^/]+$", + "location": "path" + } }, - "type": "array" - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", - "type": "integer" - }, - "referenceSetId": { - "type": "string", - "description": "If present, return only references which belong to this reference set." + "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", + "description": "Gets the access control policy for the dataset. This is empty if the\npolicy or resource does not exist.\n\nSee \u003ca href=\"/iam/docs/managing-policies#getting_a_policy\"\u003eGetting a\nPolicy\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "request": { + "$ref": "GetIamPolicyRequest" + } }, - "md5checksums": { - "description": "If present, return references for which the\nmd5checksum matches exactly.", - "items": { - "type": "string" + "undelete": { + "id": "genomics.datasets.undelete", + "path": "v1/datasets/{datasetId}:undelete", + "request": { + "$ref": "UndeleteDatasetRequest" }, - "type": "array" - } - }, - "id": "SearchReferencesRequest" - }, - "Dataset": { - "description": "A Dataset is a collection of genomic data.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object", - "properties": { - "name": { - "description": "The dataset name.", - "type": "string" - }, - "projectId": { - "description": "The Google Cloud project ID that this dataset belongs to.", - "type": "string" - }, - "id": { - "description": "The server-generated dataset ID, unique across all datasets.", - "type": "string" - }, - "createTime": { - "type": "string", - "format": "google-datetime", - "description": "The time this dataset was created, in seconds from the epoch." - } - }, - "id": "Dataset" - }, - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", - "properties": { - "callSetIds": { - "description": "IDs of the call sets created during the import.", - "items": { - "type": "string" + "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis operation is only possible for a week after the deletion occurred.", + "response": { + "$ref": "Dataset" }, - "type": "array" - } - }, - "id": "ImportVariantsResponse" - }, - "ReadGroup": { - "id": "ReadGroup", - "description": "A read group is all the data that's processed the same way by the sequencer.", - "type": "object", - "properties": { - "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": { - "type": "string", - "description": "The read group name. This corresponds to the @RG ID field in the SAM spec." + "parameterOrder": [ + "datasetId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "datasetId": { + "description": "The ID of the dataset to be undeleted.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/datasets/{datasetId}:undelete" }, - "referenceSetId": { - "description": "The reference set the reads in this read group are aligned to.", - "type": "string" + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Dataset" + }, + "parameterOrder": [ + "datasetId" + ], + "parameters": { + "datasetId": { + "location": "path", + "description": "The ID of the dataset.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "flatPath": "v1/datasets/{datasetId}", + "path": "v1/datasets/{datasetId}", + "id": "genomics.datasets.get", + "description": "Gets a dataset by ID.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" }, - "info": { - "additionalProperties": { - "items": { - "type": "any" + "patch": { + "response": { + "$ref": "Dataset" + }, + "parameterOrder": [ + "datasetId" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "datasetId": { + "location": "path", + "description": "The ID of the dataset to be updated.", + "type": "string", + "required": true }, - "type": "array" + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" + } }, - "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": { - "description": "The server-generated read group ID, unique for all read groups.\nNote: This is different than the @RG ID field in the SAM spec. For that\nvalue, see name.", - "type": "string" - }, - "programs": { - "description": "The programs used to generate this read group. Programs are always\nidentical for all read groups within a read group set. For this reason,\nonly the first read group in a returned set will have this field\npopulated.", - "items": { - "$ref": "Program" + "flatPath": "v1/datasets/{datasetId}", + "id": "genomics.datasets.patch", + "path": "v1/datasets/{datasetId}", + "request": { + "$ref": "Dataset" }, - "type": "array" - }, - "predictedInsertSize": { - "format": "int32", - "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.", - "type": "integer" - }, - "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" - } - } - }, - "ReadGroupSet": { - "properties": { - "datasetId": { - "description": "The dataset to which this read group set belongs.", - "type": "string" + "description": "Updates a dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics." }, - "readGroups": { - "items": { - "$ref": "ReadGroup" + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" }, - "type": "array", - "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set." - }, - "filename": { - "description": "The filename of the original source file for this read group set, if any.", - "type": "string" - }, - "name": { - "description": "The read group set name. By default this will be initialized to the sample\nname of the sequenced data contained in this set.", - "type": "string" + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "type": "string", + "required": true, + "pattern": "^datasets/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", + "id": "genomics.datasets.testIamPermissions", + "path": "v1/{+resource}: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.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" }, - "referenceSetId": { - "description": "The reference set to which the reads in this read group set are aligned.", - "type": "string" + "delete": { + "id": "genomics.datasets.delete", + "path": "v1/datasets/{datasetId}", + "description": "Deletes a dataset and all of its contents (all read group sets,\nreference sets, variant sets, call sets, annotation sets, etc.)\nThis is reversible (up to one week after the deletion) via\nthe\ndatasets.undelete\noperation.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "datasetId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "datasetId": { + "location": "path", + "description": "The ID of the dataset to be deleted.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/datasets/{datasetId}" }, - "info": { - "description": "A map of additional read group set information.", - "type": "object", - "additionalProperties": { - "items": { - "type": "any" + "list": { + "id": "genomics.datasets.list", + "path": "v1/datasets", + "description": "Lists datasets within a project.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "ListDatasetsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "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.", + "type": "string" }, - "type": "array" - } - }, - "id": { - "description": "The server-generated read group set ID, unique for all read group sets.", - "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.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "type": "object" - }, - "SearchVariantSetsResponse": { - "description": "The search variant sets response.", - "type": "object", - "properties": { - "variantSets": { - "items": { - "$ref": "VariantSet" + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 50. The maximum value is 1024.", + "type": "integer", + "location": "query" + }, + "projectId": { + "location": "query", + "description": "Required. The Google Cloud project ID to list datasets for.", + "type": "string" + } }, - "type": "array", - "description": "The variant sets belonging to the requested 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": "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": { - "id": "Entry", - "type": "object", - "properties": { - "annotation": { - "description": "The created annotation, if creation was successful.", - "$ref": "Annotation" - }, - "status": { - "description": "The creation status.", - "$ref": "Status" + "flatPath": "v1/datasets" } } }, - "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": { - "format": "int64", - "description": "The 0-based offset from the start of the forward strand for that reference.", - "type": "string" - }, - "referenceName": { - "description": "The name of the reference in whatever reference set is being used.", - "type": "string" - }, - "reverseStrand": { - "description": "Whether this position is on the reverse strand, as opposed to the forward\nstrand.", - "type": "boolean" - } - }, - "id": "Position" - }, - "SearchReferenceSetsResponse": { - "type": "object", - "properties": { - "referenceSets": { - "description": "The matching references sets.", - "items": { - "$ref": "ReferenceSet" + "annotations": { + "methods": { + "delete": { + "response": { + "$ref": "Empty" }, - "type": "array" - }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", - "type": "string" - } - }, - "id": "SearchReferenceSetsResponse" - }, - "SearchCallSetsRequest": { - "description": "The call set search request.", - "type": "object", - "properties": { - "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." + "parameterOrder": [ + "annotationId" + ], + "httpMethod": "DELETE", + "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 deleted.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/annotations/{annotationId}", + "id": "genomics.annotations.delete", + "path": "v1/annotations/{annotationId}", + "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set." }, - "name": { - "description": "Only return call sets for which a substring of the name matches this\nstring.", - "type": "string" + "create": { + "id": "genomics.annotations.create", + "path": "v1/annotations", + "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" + }, + "response": { + "$ref": "Annotation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotations" }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "type": "integer" + "batchCreate": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "BatchCreateAnnotationsResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotations:batchCreate", + "path": "v1/annotations:batchCreate", + "id": "genomics.annotations.batchCreate", + "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.", + "request": { + "$ref": "BatchCreateAnnotationsRequest" + } }, - "variantSetIds": { - "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided.", - "items": { - "type": "string" + "search": { + "response": { + "$ref": "SearchAnnotationsResponse" }, - "type": "array" - } - }, - "id": "SearchCallSetsRequest" - }, - "ImportReadGroupSetsRequest": { - "id": "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.", - "items": { - "type": "string" + "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/annotations/search", + "id": "genomics.annotations.search", + "path": "v1/annotations/search", + "request": { + "$ref": "SearchAnnotationsRequest" }, - "type": "array" - }, - "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" + "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." }, - "partitionStrategy": { - "type": "string", - "enumDescriptions": [ - "", - "In most cases, this strategy yields one read group set per file. This is\nthe default behavior.\n\nAllocate one read group set per file per sample. For BAM files, read\ngroups are considered to share a sample if they have identical sample\nnames. Furthermore, all reads for each file which do not belong to a read\ngroup, if any, will be grouped into a single read group set per-file.", - "Includes all read groups in all imported files into a single read group\nset. Requires that the headers for all imported files are equivalent. All\nreads which do not belong to a read group, if any, will be grouped into a\nseparate read group set." + "get": { + "response": { + "$ref": "Annotation" + }, + "parameterOrder": [ + "annotationId" ], - "enum": [ - "PARTITION_STRATEGY_UNSPECIFIED", - "PER_FILE_PER_SAMPLE", - "MERGE_ALL" + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets." + "parameters": { + "annotationId": { + "location": "path", + "description": "The ID of the annotation to be retrieved.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/annotations/{annotationId}", + "id": "genomics.annotations.get", + "path": "v1/annotations/{annotationId}", + "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set." }, - "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" - } - } - }, - "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" - }, - "version": { - "type": "integer", - "format": "int32", - "description": "Version of the `Policy`. The default version is 0." - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" + "update": { + "response": { + "$ref": "Annotation" }, - "type": "array" + "parameterOrder": [ + "annotationId" + ], + "httpMethod": "PUT", + "parameters": { + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" + }, + "annotationId": { + "location": "path", + "description": "The ID of the annotation to be updated.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotations/{annotationId}", + "id": "genomics.annotations.update", + "path": "v1/annotations/{annotationId}", + "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset.", + "request": { + "$ref": "Annotation" + } } } }, - "SearchReadsRequest": { - "description": "The read search request.", - "type": "object", - "properties": { - "start": { - "format": "int64", - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", - "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.", - "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`.", - "items": { - "type": "string" + "variantsets": { + "methods": { + "delete": { + "description": "Deletes a variant set including all variants, call sets, and calls within.\nThis is not reversible.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "Empty" }, - "type": "array" + "parameterOrder": [ + "variantSetId" + ], + "httpMethod": "DELETE", + "parameters": { + "variantSetId": { + "location": "path", + "description": "The ID of the variant set to be deleted.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/variantsets/{variantSetId}", + "id": "genomics.variantsets.delete", + "path": "v1/variantsets/{variantSetId}" }, - "readGroupIds": { - "description": "The IDs of the read groups within which to search for reads. All specified\nread groups must belong to the same read group sets. Must specify one of\n`readGroupSetIds` or `readGroupIds`.", - "items": { - "type": "string" + "create": { + "response": { + "$ref": "VariantSet" }, - "type": "array" + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": {}, + "flatPath": "v1/variantsets", + "id": "genomics.variantsets.create", + "path": "v1/variantsets", + "request": { + "$ref": "VariantSet" + }, + "description": "Creates a new variant set.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe provided variant set must have a valid `datasetId` set - all other\nfields are optional. Note that the `id` field will be ignored, as this is\nassigned by the server." }, - "end": { - "type": "string", - "format": "int64", - "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified." + "export": { + "id": "genomics.variantsets.export", + "path": "v1/variantsets/{variantSetId}:export", + "description": "Exports variant set data to an external destination.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "request": { + "$ref": "ExportVariantSetRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "variantSetId" + ], + "httpMethod": "POST", + "parameters": { + "variantSetId": { + "location": "path", + "description": "Required. The ID of the variant set that contains variant data which\nshould be exported. The caller must have READ access to this variant set.", + "type": "string", + "required": true + } + }, + "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" }, - "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" + "search": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "SearchVariantSetsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "parameters": {}, + "flatPath": "v1/variantsets/search", + "path": "v1/variantsets/search", + "id": "genomics.variantsets.search", + "request": { + "$ref": "SearchVariantSetsRequest" + }, + "description": "Returns a list of all variant sets matching search criteria.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49)." }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", - "type": "integer" - } - }, - "id": "SearchReadsRequest" - }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "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": { - "info": { - "additionalProperties": { - "items": { - "type": "any" + "patch": { + "response": { + "$ref": "VariantSet" + }, + "parameterOrder": [ + "variantSetId" + ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "format": "google-fieldmask", + "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.", + "type": "string", + "location": "query" }, - "type": "array" + "variantSetId": { + "description": "The ID of the variant to be updated (must already exist).", + "type": "string", + "required": true, + "location": "path" + } }, - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/variantsets/{variantSetId}", + "id": "genomics.variantsets.patch", + "path": "v1/variantsets/{variantSetId}", + "description": "Updates a variant set using patch semantics.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "request": { + "$ref": "VariantSet" + } }, - "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." + "get": { + "id": "genomics.variantsets.get", + "path": "v1/variantsets/{variantSetId}", + "description": "Gets a variant set by ID.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "response": { + "$ref": "VariantSet" + }, + "parameterOrder": [ + "variantSetId" ], - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "description": "The data type for this annotation. Must match the containing annotation\nset's type." - }, - "end": { - "format": "int64", - "description": "The end position of the range on the reference, 0-based exclusive.", - "type": "string" - }, - "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": { - "format": "int64", - "description": "The start position of the range on the reference, 0-based inclusive.", - "type": "string" - }, - "annotationSetId": { - "description": "The annotation set to which this annotation belongs.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The display name of this annotation." - }, - "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" - }, - "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" - }, - "referenceName": { - "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`.", - "type": "string" + "parameters": { + "variantSetId": { + "description": "Required. The ID of the variant set.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/variantsets/{variantSetId}" } - }, - "id": "Annotation" + } }, - "Operation": { - "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": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^operations/.+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/operations/{operationsId}:cancel", + "id": "genomics.operations.cancel", + "path": "v1/{+name}:cancel" }, - "metadata": { - "description": "An OperationMetadata 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" - } + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^operations/.+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/operations/{operationsId}", + "path": "v1/{+name}", + "id": "genomics.operations.get", + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." }, - "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" + "list": { + "description": "Lists operations that match the specified filter in the request.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^operations$", + "location": "path" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + "type": "integer", + "location": "query" + }, + "filter": { + "location": "query", + "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + "type": "string" + } + }, + "flatPath": "v1/operations", + "id": "genomics.operations.list", + "path": "v1/{+name}" } - }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" + } + } + }, + "parameters": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "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" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "ImportReadGroupSetsResponse": { + "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": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json" + }, + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + }, + "key": { + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "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" + } + }, + "schemas": { + "SearchAnnotationSetsResponse": { "type": "object", "properties": { - "readGroupSetIds": { - "description": "IDs of the read group sets that were 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" + }, + "annotationSets": { + "description": "The matching annotation sets.", "items": { - "type": "string" + "$ref": "AnnotationSet" }, "type": "array" } }, - "id": "ImportReadGroupSetsResponse", - "description": "The read group set import response." + "id": "SearchAnnotationSetsResponse" }, - "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", + "ImportVariantsRequest": { "properties": { - "phaseset": { - "description": "If this field is present, this variant call's genotype ordering implies\nthe phase of the bases and is consistent with any other variant calls in\nthe same reference sequence which have the same phaseset value.\nWhen importing data from VCF, if the genotype data was phased but no\nphase set was specified this field will be set to `*`.", + "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": { + "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" + ], + "description": "The format of the variant data being imported. If unspecified, defaults to\nto `VCF`.", "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", + "infoMergeConfig": { "additionalProperties": { - "items": { - "type": "any" - }, - "type": "array" - } + "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" }, - "callSetName": { - "description": "The name of the call set this variant call belongs to.", - "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.", + "items": { + "type": "string" + }, + "type": "array" }, - "genotypeLikelihood": { - "description": "The genotype likelihoods for this variant call. Each array entry\nrepresents how likely a specific genotype is for this call. The value\nordering is defined by the GL tag in the VCF spec.\nIf Phred-scaled genotype likelihood scores (PL) are available and\nlog10(P) genotype likelihood scores (GL) are not, PL scores are converted\nto GL scores. If both are available, PL scores are stored in `info`.", + "variantSetId": { + "description": "Required. The variant set to which variant data should be imported.", + "type": "string" + } + }, + "id": "ImportVariantsRequest", + "description": "The variant data import request.", + "type": "object" + }, + "VariantAnnotation": { + "properties": { + "transcriptIds": { + "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", "items": { - "format": "double", - "type": "number" + "type": "string" }, "type": "array" }, - "callSetId": { - "description": "The ID of the call set this variant call belongs to.", + "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." + ] + }, + "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" }, - "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.", + "geneId": { + "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", + "type": "string" + }, + "clinicalSignificance": { + "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/", + "type": "string" + }, + "conditions": { + "description": "The set of conditions associated with this variant.\nA condition describes the way a variant influences human health.", "items": { - "format": "int32", - "type": "integer" + "$ref": "ClinicalCondition" }, "type": "array" + }, + "effect": { + "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", + "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." + ] } }, - "id": "VariantCall" + "id": "VariantAnnotation", + "type": "object" }, - "SearchVariantsResponse": { - "description": "The variant search response.", + "ListCoverageBucketsResponse": { "type": "object", "properties": { - "variants": { - "description": "The list of matching Variants.", - "items": { - "$ref": "Variant" - }, - "type": "array" - }, "nextPageToken": { "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", "type": "string" + }, + "bucketWidth": { + "format": "int64", + "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`).", + "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.", + "items": { + "$ref": "CoverageBucket" + }, + "type": "array" } }, - "id": "SearchVariantsResponse" + "id": "ListCoverageBucketsResponse" }, - "ListBasesResponse": { + "ExportVariantSetRequest": { + "description": "The variant data export request.", "type": "object", "properties": { - "sequence": { - "description": "A substring of the bases that make up this reference.", + "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" }, - "offset": { - "format": "int64", - "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.", + "bigqueryDataset": { + "description": "Required. The BigQuery dataset to export data to. This dataset must already\nexist. Note that this is distinct from the Genomics concept of \"dataset\".", "type": "string" }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "format": { + "enumDescriptions": [ + "", + "Export the data to Google BigQuery." + ], + "enum": [ + "FORMAT_UNSPECIFIED", + "FORMAT_BIGQUERY" + ], + "description": "The format for the exported data.", + "type": "string" + }, + "projectId": { + "description": "Required. The Google Cloud project ID that owns the destination\nBigQuery dataset. The caller must have WRITE access to this project. This\nproject will also own the resulting export job.", "type": "string" + }, + "callSetIds": { + "description": "If provided, only variant call information from the specified call sets\nwill be exported. By default all variant calls are exported.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "ListBasesResponse" + "id": "ExportVariantSetRequest" }, - "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.", + "SearchAnnotationsRequest": { "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.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" + "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" }, - "code": { + "pageSize": { "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", "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.", + "start": { + "format": "int64", + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified,\nreferenceId or\nreferenceName\nmust be specified. Defaults to 0.", "type": "string" - } - }, - "id": "Status" - }, - "UndeleteDatasetRequest": { - "type": "object", - "properties": {}, - "id": "UndeleteDatasetRequest" - }, - "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", + }, + "annotationSetIds": { + "description": "Required. The annotation sets to search within. The caller must have\n`READ` access to these annotation sets.\nAll queried annotation sets must have the same type.", "items": { "type": "string" }, "type": "array" }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "referenceName": { + "description": "The name of the reference to query, within the reference set associated\nwith this query.", "type": "string" - } - } - }, - "Range": { - "description": "A 0-based half-open genomic coordinate range for search requests.", - "type": "object", - "properties": { - "start": { - "type": "string", - "format": "int64", - "description": "The start position of the range on the reference, 0-based inclusive." }, - "end": { - "format": "int64", - "description": "The end position of the range on the reference, 0-based exclusive.", + "referenceId": { + "description": "The ID of the reference to query.", "type": "string" }, - "referenceName": { - "description": "The reference sequence name, for example `chr1`,\n`1`, or `chrX`.", + "end": { + "format": "int64", + "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.", "type": "string" } }, - "id": "Range" + "id": "SearchAnnotationsRequest" }, - "VariantSet": { - "id": "VariantSet", - "description": "A variant set is a collection of call sets and variants. It contains summary\nstatistics of those contents. A variant set belongs to a dataset.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "OperationEvent": { + "description": "An event that occurred during an Operation.", "type": "object", "properties": { - "metadata": { - "description": "The metadata associated with this variant set.", - "items": { - "$ref": "VariantSetMetadata" - }, - "type": "array" - }, - "referenceBounds": { - "description": "A list of all references used by the variants in a variant set\nwith associated coordinate upper bounds for each one.", - "items": { - "$ref": "ReferenceBound" - }, - "type": "array" - }, - "id": { - "description": "The server-generated variant set ID, unique across all variant sets.", + "endTime": { + "format": "google-datetime", + "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.", "type": "string" }, - "description": { - "type": "string", - "description": "A textual description of this variant set." - }, - "datasetId": { - "type": "string", - "description": "The dataset to which this variant set belongs." - }, - "name": { - "description": "User-specified, mutable name.", + "startTime": { + "format": "google-datetime", + "description": "Optional time of when event started.", "type": "string" }, - "referenceSetId": { - "description": "The reference set to which the variant set is mapped. The reference set\ndescribes the alignment provenance of the variant set, while the\n`referenceBounds` describe the shape of the actual variant data. The\nreference set's reference names are a superset of those found in the\n`referenceBounds`.\n\nFor example, given a variant set that is mapped to the GRCh38 reference set\nand contains a single variant on reference 'X', `referenceBounds` would\ncontain only an entry for 'X', while the associated reference set\nenumerates all possible references: '1', '2', 'X', 'Y', 'MT', etc.", + "description": { + "description": "Required description of event.", "type": "string" } - } + }, + "id": "OperationEvent" }, - "ReferenceBound": { - "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", - "type": "object", + "CodingSequence": { "properties": { - "upperBound": { + "start": { "format": "int64", - "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", + "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.", "type": "string" }, - "referenceName": { - "description": "The name of the reference associated with this reference bound.", + "end": { + "format": "int64", + "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.", "type": "string" } }, - "id": "ReferenceBound" + "id": "CodingSequence", + "type": "object" }, - "BatchCreateAnnotationsResponse": { - "id": "BatchCreateAnnotationsResponse", - "type": "object", + "TestIamPermissionsResponse": { "properties": { - "entries": { - "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", "items": { - "$ref": "Entry" + "type": "string" }, "type": "array" } - } + }, + "id": "TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method.", + "type": "object" }, - "SearchCallSetsResponse": { - "description": "The call set search response.", + "SearchReferencesResponse": { "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." - }, - "callSets": { - "description": "The list of matching call sets.", + "references": { + "description": "The matching references.", "items": { - "$ref": "CallSet" + "$ref": "Reference" }, "type": "array" + }, + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" } }, - "id": "SearchCallSetsResponse" + "id": "SearchReferencesResponse" }, - "Variant": { + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "SearchAnnotationSetsRequest": { + "type": "object", "properties": { - "quality": { - "format": "double", - "description": "A measure of how likely this variant is to be real.\nA higher value is better.", - "type": "number" - }, - "id": { - "description": "The server-generated variant ID, unique across all variants.", - "type": "string" - }, - "variantSetId": { - "type": "string", - "description": "The ID of the variant set this variant belongs to." - }, - "referenceName": { - "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", - "type": "string" - }, - "info": { - "additionalProperties": { - "items": { - "type": "any" - }, - "type": "array" - }, - "description": "A map of additional variant information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", - "type": "object" - }, - "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.", + "datasetIds": { + "description": "Required. The dataset IDs to search within. Caller must have `READ` access\nto these datasets.", "items": { "type": "string" }, "type": "array" }, - "alternateBases": { - "description": "The bases that appear instead of the reference bases.", + "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.", "items": { + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" + ], "type": "string" }, "type": "array" }, - "end": { - "format": "int64", - "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.", + "name": { + "description": "Only return annotations sets for which a substring of the name matches this\nstring (case insensitive).", "type": "string" }, - "filter": { - "description": "A list of filters (normally quality filters) this variant has failed.\n`PASS` indicates this variant has passed all filters.", - "items": { - "type": "string" - }, - "type": "array" - }, - "calls": { - "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", - "items": { - "$ref": "VariantCall" - }, - "type": "array" - }, - "created": { - "format": "int64", - "description": "The date this variant was created, in milliseconds from the epoch.", + "referenceSetId": { + "description": "If specified, only annotation sets associated with the given reference set\nare returned.", "type": "string" }, - "start": { - "format": "int64", - "description": "The position at which this variant occurs (0-based).\nThis corresponds to the first base of the string of reference bases.", + "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": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 128. The maximum value is 1024.", + "type": "integer" } }, - "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\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach of the calls on a variant represent a determination of genotype with\nrespect to that variant. For example, a call might assign probability of 0.32\nto the occurrence of a SNP named rs1234 in a sample named NA12345. A call\nbelongs to a call set, which contains related calls typically from one\nsample.", - "type": "object" + "id": "SearchAnnotationSetsRequest" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "SearchReadGroupSetsResponse": { + "description": "The read group set search response.", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "readGroupSets": { + "description": "The list of matching read group sets.", "items": { - "$ref": "Operation" + "$ref": "ReadGroupSet" }, "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListOperationsResponse" + "id": "SearchReadGroupSetsResponse" }, - "OperationMetadata": { - "description": "Metadata describing an Operation.", - "type": "object", + "LinearAlignment": { "properties": { - "events": { - "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", + "cigar": { + "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference.", "items": { - "$ref": "OperationEvent" + "$ref": "CigarUnit" }, "type": "array" }, - "endTime": { - "format": "google-datetime", - "description": "The time at which the job stopped running.", - "type": "string" + "position": { + "description": "The position of this alignment.", + "$ref": "Position" }, - "startTime": { - "format": "google-datetime", - "description": "The time at which the job began to run.", - "type": "string" - }, - "request": { - "description": "The original request that started the operation. Note that this will be in\ncurrent version of the API. If the operation was started with v1beta2 API\nand a GetOperation is performed on v1 API, a v1 request will be returned.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "runtimeMetadata": { - "description": "Runtime metadata on this Operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "labels": { - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "createTime": { - "format": "google-datetime", - "description": "The time at which the job was submitted to the Genomics service.", - "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" + "mappingQuality": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "OperationMetadata" + "id": "LinearAlignment", + "description": "A linear alignment can be represented by one CIGAR string. Describes the\nmapped position and local alignment of the read to the reference.", + "type": "object" }, - "SearchVariantsRequest": { - "description": "The variant search request.", + "SearchReferencesRequest": { "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" - }, - "maxCalls": { - "format": "int32", - "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.", - "type": "integer" - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of variants to return in a single page. If unspecified,\ndefaults to 5000. The maximum value is 10000.", - "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.", + "md5checksums": { + "description": "If present, return references for which the\nmd5checksum matches exactly.", "items": { "type": "string" }, "type": "array" }, - "start": { - "format": "int64", - "description": "The beginning of the window (0-based, inclusive) for which\noverlapping variants should be returned. If unspecified, defaults to 0.", - "type": "string" - }, - "variantName": { - "description": "Only return variants which have exactly this name.", + "pageToken": { + "description": "The continuation token, which is used to page through large result sets.\nTo get the next page of results, set this parameter to the value of\n`nextPageToken` from the previous response.", "type": "string" }, - "referenceName": { - "type": "string", - "description": "Required. Only return variants in this reference sequence." - }, - "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.", + "accessions": { + "description": "If present, return references for which a prefix of any of\nsourceAccessions match\nany of these strings. Accession numbers typically have a main number and a\nversion, for example `GCF_000001405.26`.", "items": { "type": "string" }, "type": "array" }, - "end": { - "type": "string", - "format": "int64", - "description": "The end of the window, 0-based exclusive. If unspecified or 0, defaults to\nthe length of the reference." + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", + "type": "integer" + }, + "referenceSetId": { + "description": "If present, return only references which belong to this reference set.", + "type": "string" } }, - "id": "SearchVariantsRequest" + "id": "SearchReferencesRequest" }, - "SearchReadGroupSetsRequest": { + "Dataset": { + "description": "A Dataset is a collection of genomic data.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", "type": "object", "properties": { - "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.", + "id": { + "description": "The server-generated dataset ID, unique across all datasets.", "type": "string" }, - "name": { - "description": "Only return read group sets for which a substring of the name matches this\nstring.", + "createTime": { + "format": "google-datetime", + "description": "The time this dataset was created, in seconds from the epoch.", "type": "string" }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 1024.", - "type": "integer" + "name": { + "description": "The dataset name.", + "type": "string" }, - "datasetIds": { - "description": "Restricts this query to read group sets within the given datasets. At least\none ID must be provided.", + "projectId": { + "description": "The Google Cloud project ID that this dataset belongs to.", + "type": "string" + } + }, + "id": "Dataset" + }, + "ImportVariantsResponse": { + "description": "The variant data import response.", + "type": "object", + "properties": { + "callSetIds": { + "description": "IDs of the call sets created during the import.", "items": { "type": "string" }, "type": "array" } }, - "id": "SearchReadGroupSetsRequest", - "description": "The read group set search request." + "id": "ImportVariantsResponse" }, - "SearchAnnotationsResponse": { - "id": "SearchAnnotationsResponse", - "type": "object", + "ReadGroup": { "properties": { - "annotations": { - "description": "The matching annotations.", + "name": { + "description": "The read group name. This corresponds to the @RG ID field in the SAM spec.", + "type": "string" + }, + "referenceSetId": { + "description": "The reference set the reads in this read group are aligned to.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read group information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "id": { + "description": "The server-generated read group ID, unique for all read groups.\nNote: This is different than the @RG ID field in the SAM spec. For that\nvalue, see name.", + "type": "string" + }, + "programs": { + "description": "The programs used to generate this read group. Programs are always\nidentical for all read groups within a read group set. For this reason,\nonly the first read group in a returned set will have this field\npopulated.", "items": { - "$ref": "Annotation" + "$ref": "Program" }, "type": "array" }, - "nextPageToken": { - "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "predictedInsertSize": { + "format": "int32", + "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.", + "type": "integer" + }, + "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.", "type": "string" + }, + "experiment": { + "$ref": "Experiment", + "description": "The experiment used to generate this read group." } - } + }, + "id": "ReadGroup", + "description": "A read group is all the data that's processed the same way by the sequencer.", + "type": "object" }, - "ClinicalCondition": { - "type": "object", + "ReadGroupSet": { "properties": { - "externalIds": { - "description": "The set of external IDs for this condition.", - "items": { - "$ref": "ExternalId" - }, - "type": "array" + "id": { + "description": "The server-generated read group set ID, unique for all read group sets.", + "type": "string" }, - "conceptId": { - "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", + "datasetId": { + "description": "The dataset to which this read group set belongs.", "type": "string" }, - "names": { - "description": "A set of names for the condition.", + "readGroups": { + "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set.", "items": { - "type": "string" + "$ref": "ReadGroup" }, "type": "array" }, - "omimId": { - "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", + "filename": { + "description": "The filename of the original source file for this read group set, if any.", + "type": "string" + }, + "name": { + "description": "The read group set name. By default this will be initialized to the sample\nname of the sequenced data contained in this set.", + "type": "string" + }, + "referenceSetId": { + "description": "The reference set to which the reads in this read group set are aligned.", "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read group set information.", + "type": "object" } }, - "id": "ClinicalCondition" + "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.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "type": "object" }, - "SearchReadsResponse": { - "description": "The read search response.", - "type": "object", + "SearchVariantSetsResponse": { "properties": { "nextPageToken": { "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", "type": "string" }, - "alignments": { + "variantSets": { + "description": "The variant sets belonging to the requested dataset.", "items": { - "$ref": "Read" + "$ref": "VariantSet" }, - "type": "array", - "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" } }, - "id": "SearchReadsResponse" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://genomics.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/genomics": { - "description": "View and manage Genomics data" - }, - "https://www.googleapis.com/auth/devstorage.read_write": { - "description": "Manage your data in Google Cloud Storage" - }, - "https://www.googleapis.com/auth/bigquery": { - "description": "View and manage your data in Google BigQuery" + "id": "SearchVariantSetsResponse", + "description": "The search variant sets response.", + "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" + }, + "Entry": { + "type": "object", + "properties": { + "annotation": { + "$ref": "Annotation", + "description": "The created annotation, if creation was successful." }, - "https://www.googleapis.com/auth/genomics.readonly": { - "description": "View Genomics data" + "status": { + "description": "The creation status.", + "$ref": "Status" + } + }, + "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": { + "format": "int64", + "description": "The 0-based offset from the start of the forward strand for that reference.", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "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" } - } - } - }, - "servicePath": "", - "description": "Upload, process, query, and search Genomics data in the cloud.", - "kind": "discovery#restDescription", - "rootUrl": "https://genomics.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "genomics", - "batchPath": "batch", - "revision": "20170717", - "id": "genomics:v1", - "documentationLink": "https://cloud.google.com/genomics", - "title": "Genomics API", - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "annotations": { - "methods": { - "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" - }, - "response": { - "$ref": "SearchAnnotationsResponse" + }, + "id": "Position" + }, + "SearchReferenceSetsResponse": { + "properties": { + "referenceSets": { + "description": "The matching references sets.", + "items": { + "$ref": "ReferenceSet" }, - "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/annotations/search", - "id": "genomics.annotations.search", - "path": "v1/annotations/search" + "type": "array" }, - "get": { - "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set.", - "response": { - "$ref": "Annotation" - }, - "parameterOrder": [ - "annotationId" - ], - "httpMethod": "GET", - "parameters": { - "annotationId": { - "description": "The ID of the annotation to be retrieved.", - "type": "string", - "required": true, - "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/annotations/{annotationId}", - "id": "genomics.annotations.get", - "path": "v1/annotations/{annotationId}" + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + } + }, + "id": "SearchReferenceSetsResponse", + "type": "object" + }, + "SearchCallSetsRequest": { + "description": "The call set 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" }, - "update": { - "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset.", - "request": { - "$ref": "Annotation" - }, - "response": { - "$ref": "Annotation" - }, - "parameterOrder": [ - "annotationId" - ], - "httpMethod": "PUT", - "parameters": { - "annotationId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the annotation to be updated." - }, - "updateMask": { - "type": "string", - "location": "query", - "format": "google-fieldmask", - "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." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotations/{annotationId}", - "id": "genomics.annotations.update", - "path": "v1/annotations/{annotationId}" + "name": { + "description": "Only return call sets for which a substring of the name matches this\nstring.", + "type": "string" }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "annotationId" - ], - "httpMethod": "DELETE", - "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 deleted.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/annotations/{annotationId}", - "id": "genomics.annotations.delete", - "path": "v1/annotations/{annotationId}", - "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set." + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", + "type": "integer" }, - "create": { - "response": { - "$ref": "Annotation" + "variantSetIds": { + "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided.", + "items": { + "type": "string" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "type": "array" + } + }, + "id": "SearchCallSetsRequest" + }, + "ImportReadGroupSetsRequest": { + "description": "The read group set import request.", + "type": "object", + "properties": { + "partitionStrategy": { + "enum": [ + "PARTITION_STRATEGY_UNSPECIFIED", + "PER_FILE_PER_SAMPLE", + "MERGE_ALL" ], - "parameters": {}, - "flatPath": "v1/annotations", - "id": "genomics.annotations.create", - "path": "v1/annotations", - "request": { - "$ref": "Annotation" - }, - "description": "Creates a new annotation. Caller must have WRITE permission\nfor the associated annotation set.\n\nThe following fields are required:\n\n* annotationSetId\n* referenceName or\n referenceId\n\n### Transcripts\n\nFor annotations of type TRANSCRIPT, the following fields of\ntranscript must be provided:\n\n* exons.start\n* exons.end\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field). The annotated\nrange must be no longer than 100Mbp (mega base pairs). See the\nAnnotation resource\nfor additional restrictions on each field." + "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets.", + "type": "string", + "enumDescriptions": [ + "", + "In most cases, this strategy yields one read group set per file. This is\nthe default behavior.\n\nAllocate one read group set per file per sample. For BAM files, read\ngroups are considered to share a sample if they have identical sample\nnames. Furthermore, all reads for each file which do not belong to a read\ngroup, if any, will be grouped into a single read group set per-file.", + "Includes all read groups in all imported files into a single read group\nset. Requires that the headers for all imported files are equivalent. All\nreads which do not belong to a read group, if any, will be grouped into a\nseparate read group set." + ] }, - "batchCreate": { - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotations:batchCreate", - "path": "v1/annotations:batchCreate", - "id": "genomics.annotations.batchCreate", - "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.", - "request": { - "$ref": "BatchCreateAnnotationsRequest" + "datasetId": { + "description": "Required. The ID of the dataset these read group sets will belong to. The\ncaller must have WRITE permissions to this dataset.", + "type": "string" + }, + "sourceUris": { + "description": "A list of URIs pointing at [BAM\nfiles](https://samtools.github.io/hts-specs/SAMv1.pdf)\nin Google Cloud Storage.\nThose URIs can include wildcards (*), but do not add or remove\nmatching files before import has completed.\n\nNote that Google Cloud Storage object listing is only eventually\nconsistent: files added may be not be immediately visible to\neveryone. Thus, if using a wildcard it is preferable not to start\nthe import immediately after the files are created.", + "items": { + "type": "string" }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "BatchCreateAnnotationsResponse" - } + "type": "array" + }, + "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": "ImportReadGroupSetsRequest" }, - "variantsets": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "variantSetId" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "variantSetId": { - "description": "The ID of the variant set to be deleted.", - "type": "string", - "required": true, - "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.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", + "type": "object", + "properties": { + "etag": { + "format": "byte", + "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.", + "type": "string" }, - "create": { - "flatPath": "v1/variantsets", - "path": "v1/variantsets", - "id": "genomics.variantsets.create", - "description": "Creates a new variant set.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe provided variant set must have a valid `datasetId` set - all other\nfields are optional. Note that the `id` field will be ignored, as this is\nassigned by the server.", - "request": { - "$ref": "VariantSet" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "VariantSet" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ] + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" }, - "export": { - "request": { - "$ref": "ExportVariantSetRequest" - }, - "description": "Exports variant set data to an external destination.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - "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.", - "type": "string", - "required": true, - "location": "path" - } + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" }, - "flatPath": "v1/variantsets/{variantSetId}:export", - "id": "genomics.variantsets.export", - "path": "v1/variantsets/{variantSetId}:export" + "type": "array" + } + }, + "id": "Policy" + }, + "SearchReadsRequest": { + "properties": { + "start": { + "format": "int64", + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", + "type": "string" }, - "search": { - "description": "Returns a list of all variant sets matching search criteria.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49).", - "request": { - "$ref": "SearchVariantSetsRequest" - }, - "response": { - "$ref": "SearchVariantSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/variantsets/search", - "id": "genomics.variantsets.search", - "path": "v1/variantsets/search" + "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" }, - "patch": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "variantSetId": { - "description": "The ID of the variant to be updated (must already exist).", - "type": "string", - "required": true, - "location": "path" - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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.", - "type": "string" - } - }, - "flatPath": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.patch", - "path": "v1/variantsets/{variantSetId}", - "request": { - "$ref": "VariantSet" - }, - "description": "Updates a variant set using patch semantics.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "VariantSet" + "readGroupSetIds": { + "description": "The IDs of the read groups sets within which to search for reads. All\nspecified read group sets must be aligned against a common set of reference\nsequences; this defines the genomic coordinates for the query. Must specify\none of `readGroupSetIds` or `readGroupIds`.", + "items": { + "type": "string" }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "PATCH" + "type": "array" }, - "get": { - "id": "genomics.variantsets.get", - "path": "v1/variantsets/{variantSetId}", - "description": "Gets a variant set by ID.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "VariantSet" - }, - "parameterOrder": [ - "variantSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "variantSetId": { - "type": "string", - "required": true, - "location": "path", - "description": "Required. The ID of the variant set." - } + "readGroupIds": { + "description": "The IDs of the read groups within which to search for reads. All specified\nread groups must belong to the same read group sets. Must specify one of\n`readGroupSetIds` or `readGroupIds`.", + "items": { + "type": "string" }, - "flatPath": "v1/variantsets/{variantSetId}" + "type": "array" + }, + "end": { + "format": "int64", + "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified.", + "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": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 2048.", + "type": "integer" } - } + }, + "id": "SearchReadsRequest", + "description": "The read search request.", + "type": "object" }, - "operations": { - "methods": { - "cancel": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "genomics.operations.cancel", - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - } + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" + }, + "Annotation": { + "properties": { + "end": { + "format": "int64", + "description": "The end position of the range on the reference, 0-based exclusive.", + "type": "string" }, - "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" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^operations/.+$", - "location": "path" - } - }, - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "genomics.operations.get" + "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`." }, - "list": { - "response": { - "$ref": "ListOperationsResponse" - }, - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "filter": { - "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "name": { - "location": "path", - "description": "The name of the operation's parent resource.", - "type": "string", - "required": true, - "pattern": "^operations$" + "start": { + "format": "int64", + "description": "The start position of the range on the reference, 0-based inclusive.", + "type": "string" + }, + "annotationSetId": { + "description": "The annotation set to which this annotation belongs.", + "type": "string" + }, + "name": { + "description": "The display name of this annotation.", + "type": "string" + }, + "variant": { + "description": "A variant annotation, which describes the effect of a variant on the\ngenome, the coding sequence, and/or higher level consequences at the\norganism level e.g. pathogenicity. This field is only set for annotations\nof type `VARIANT`.", + "$ref": "VariantAnnotation" + }, + "referenceId": { + "description": "The ID of the Google Genomics reference associated with this range.", + "type": "string" + }, + "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" + }, + "referenceName": { + "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", - "type": "integer", - "location": "query" - } + "type": "array" }, - "flatPath": "v1/operations", - "id": "genomics.operations.list", - "path": "v1/{+name}", - "description": "Lists operations that match the specified filter in the request." + "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." + ] } - } + }, + "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`.", + "type": "object" }, - "referencesets": { - "methods": { - "search": { - "response": { - "$ref": "SearchReferenceSetsResponse" - }, - "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/referencesets/search", - "id": "genomics.referencesets.search", - "path": "v1/referencesets/search", - "request": { - "$ref": "SearchReferenceSetsRequest" - }, - "description": "Searches for reference sets which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)" + "RuntimeMetadata": { + "properties": { + "computeEngine": { + "description": "Execution information specific to Google Compute Engine.", + "$ref": "ComputeEngine" + } + }, + "id": "RuntimeMetadata", + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "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" }, - "get": { - "description": "Gets a reference set.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83).", - "response": { - "$ref": "ReferenceSet" + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "parameterOrder": [ - "referenceSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "referenceSetId": { - "description": "The ID of the reference set.", - "type": "string", - "required": true, - "location": "path" - } + "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" + }, + "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" }, - "flatPath": "v1/referencesets/{referenceSetId}", - "id": "genomics.referencesets.get", - "path": "v1/referencesets/{referenceSetId}" + "description": "An OperationMetadata object. This will always be returned with the Operation.", + "type": "object" } - } + }, + "id": "Operation" }, - "readgroupsets": { - "methods": { - "export": { - "parameters": { - "readGroupSetId": { - "location": "path", - "description": "Required. The ID of the read group set to export. The caller must have\nREAD access to this read group set.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}:export", - "id": "genomics.readgroupsets.export", - "path": "v1/readgroupsets/{readGroupSetId}:export", - "description": "Exports a read group set to a BAM file in Google Cloud Storage.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nNote that currently there may be some differences between exported BAM\nfiles and the original BAM file at the time of import. See\nImportReadGroupSets\nfor caveats.", - "request": { - "$ref": "ExportReadGroupSetRequest" - }, - "response": { - "$ref": "Operation" + "ImportReadGroupSetsResponse": { + "properties": { + "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", + "items": { + "type": "string" }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "POST" + "type": "array" + } + }, + "id": "ImportReadGroupSetsResponse", + "description": "The read group set import response.", + "type": "object" + }, + "VariantCall": { + "properties": { + "callSetId": { + "description": "The ID of the call set this variant call belongs to.", + "type": "string" }, - "search": { - "request": { - "$ref": "SearchReadGroupSetsRequest" - }, - "description": "Searches for read group sets matching the criteria.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchReadGroupSetsResponse" + "genotype": { + "description": "The genotype of this variant call. Each value represents either the value\nof the `referenceBases` field or a 1-based index into\n`alternateBases`. If a variant had a `referenceBases`\nvalue of `T` and an `alternateBases`\nvalue of `[\"A\", \"C\"]`, and the `genotype` was\n`[2, 1]`, that would mean the call\nrepresented the heterozygous value `CA` for this variant.\nIf the `genotype` was instead `[0, 1]`, the\nrepresented value would be `TA`. Ordering of the\ngenotype values is important if the `phaseset` is present.\nIf a genotype is not called (that is, a `.` is present in the\nGT string) -1 is returned.", + "items": { + "format": "int32", + "type": "integer" }, - "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" + "type": "array" }, - "patch": { - "path": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.patch", - "description": "Updates a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "request": { - "$ref": "ReadGroupSet" + "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" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" }, - "httpMethod": "PATCH", - "parameterOrder": [ - "readGroupSetId" - ], - "response": { - "$ref": "ReadGroupSet" - }, - "parameters": { - "readGroupSetId": { - "type": "string", - "required": true, - "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." - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}" + "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" }, - "get": { - "flatPath": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.get", - "path": "v1/readgroupsets/{readGroupSetId}", - "description": "Gets a read group set by ID.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "ReadGroupSet" - }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "GET", - "parameters": { - "readGroupSetId": { - "location": "path", - "description": "The ID of the read group set.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ] + "callSetName": { + "description": "The name of the call set this variant call belongs to.", + "type": "string" }, - "import": { - "response": { - "$ref": "Operation" + "genotypeLikelihood": { + "description": "The genotype likelihoods for this variant call. Each array entry\nrepresents how likely a specific genotype is for this call. The value\nordering is defined by the GL tag in the VCF spec.\nIf Phred-scaled genotype likelihood scores (PL) are available and\nlog10(P) genotype likelihood scores (GL) are not, PL scores are converted\nto GL scores. If both are available, PL scores are stored in `info`.", + "items": { + "format": "double", + "type": "number" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/readgroupsets:import", - "id": "genomics.readgroupsets.import", - "path": "v1/readgroupsets:import", - "request": { - "$ref": "ImportReadGroupSetsRequest" + "type": "array" + } + }, + "id": "VariantCall", + "description": "A call represents the determination of genotype with respect to a particular\nvariant. It may include associated information such as quality and phasing.\nFor example, a call might assign a probability of 0.32 to the occurrence of\na SNP named rs1234 in a call set with the name NA12345.", + "type": "object" + }, + "SearchVariantsResponse": { + "description": "The variant search response.", + "type": "object", + "properties": { + "variants": { + "description": "The list of matching Variants.", + "items": { + "$ref": "Variant" }, - "description": "Creates read group sets by asynchronously importing the provided\ninformation.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe caller must have WRITE permissions to the dataset.\n\n## Notes on [BAM](https://samtools.github.io/hts-specs/SAMv1.pdf) import\n\n- Tags will be converted to strings - tag types are not preserved\n- Comments (`@CO`) in the input file header will not be preserved\n- Original header order of references (`@SQ`) will not be preserved\n- Any reverse stranded unmapped reads will be reverse complemented, and\ntheir qualities (also the \"BQ\" and \"OQ\" tags, if any) will be reversed\n- Unmapped reads will be stripped of positional information (reference name\nand position)" + "type": "array" }, - "delete": { - "description": "Deletes a read group set.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "DELETE", - "parameters": { - "readGroupSetId": { - "description": "The ID of the read group set to be deleted. The caller must have WRITE\npermissions to the dataset associated with this read group set.", - "type": "string", - "required": true, - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.delete", - "path": "v1/readgroupsets/{readGroupSetId}" + "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" } }, - "resources": { - "coveragebuckets": { - "methods": { - "list": { - "description": "Lists fixed width coverage buckets for a read group set, each of which\ncorrespond to a range of a reference sequence. Each bucket summarizes\ncoverage information across its corresponding genomic range.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nCoverage is defined as the number of reads which are aligned to a given\nbase in the reference sequence. Coverage buckets are available at several\nprecomputed bucket widths, enabling retrieval of various coverage 'zoom\nlevels'. The caller must have READ permissions for the target read group\nset.", - "response": { - "$ref": "ListCoverageBucketsResponse" - }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "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", - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 2048." - }, - "start": { - "format": "int64", - "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified. Defaults to 0.", - "type": "string", - "location": "query" - }, - "readGroupSetId": { - "location": "path", - "description": "Required. The ID of the read group set over which coverage is requested.", - "type": "string", - "required": true - }, - "targetBucketWidth": { - "format": "int64", - "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.", - "type": "string", - "location": "query" - }, - "referenceName": { - "description": "The name of the reference to query, within the reference set associated\nwith this query. Optional.", - "type": "string", - "location": "query" - }, - "end": { - "format": "int64", - "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.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", - "id": "genomics.readgroupsets.coveragebuckets.list", - "path": "v1/readgroupsets/{readGroupSetId}/coveragebuckets" - } - } + "id": "SearchVariantsResponse" + }, + "ListBasesResponse": { + "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" + }, + "sequence": { + "description": "A substring of the bases that make up this reference.", + "type": "string" + }, + "offset": { + "format": "int64", + "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.", + "type": "string" } - } + }, + "id": "ListBasesResponse" }, - "reads": { - "methods": { - "search": { - "path": "v1/reads/search", - "id": "genomics.reads.search", - "request": { - "$ref": "SearchReadsRequest" - }, - "description": "Gets a list of reads for one or more read group sets.\n\nFor the definitions of read group sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nReads search operates over a genomic coordinate space of reference sequence\n& position defined over the reference sequences to which the requested\nread group sets are aligned.\n\nIf a target positional range is specified, search returns all reads whose\nalignment to the reference genome overlap the range. A query which\nspecifies only read group set IDs yields all reads in those read group\nsets, including unmapped reads.\n\nAll reads returned (including reads on subsequent pages) are ordered by\ngenomic coordinate (by reference sequence, then position). Reads with\nequivalent genomic coordinates are returned in an unspecified order. This\norder is consistent, such that two queries for the same content (regardless\nof page size) yield reads in the same order across their respective streams\nof paginated responses.\n\nImplements\n[GlobalAllianceApi.searchReads](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L85).", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchReadsResponse" + "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/reads/search" + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" }, - "callsets": { - "methods": { - "create": { - "path": "v1/callsets", - "id": "genomics.callsets.create", - "request": { - "$ref": "CallSet" + "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", + "items": { + "type": "string" }, - "description": "Creates a new call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "CallSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/callsets" + "type": "array" }, - "delete": { - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.delete", - "description": "Deletes a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "httpMethod": "DELETE", - "parameterOrder": [ - "callSetId" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "callSetId": { - "location": "path", - "description": "The ID of the call set to be deleted.", - "type": "string", - "required": true - } - } + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "id": "Binding" + }, + "UndeleteDatasetRequest": { + "properties": {}, + "id": "UndeleteDatasetRequest", + "type": "object" + }, + "Range": { + "properties": { + "start": { + "format": "int64", + "description": "The start position of the range on the reference, 0-based inclusive.", + "type": "string" }, - "search": { - "response": { - "$ref": "SearchCallSetsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/callsets/search", - "id": "genomics.callsets.search", - "path": "v1/callsets/search", - "request": { - "$ref": "SearchCallSetsRequest" - }, - "description": "Gets a list of call sets matching the criteria.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178)." + "end": { + "format": "int64", + "description": "The end position of the range on the reference, 0-based exclusive.", + "type": "string" }, - "get": { - "description": "Gets a call set by ID.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "CallSet" - }, - "parameterOrder": [ - "callSetId" - ], - "httpMethod": "GET", - "parameters": { - "callSetId": { - "location": "path", - "description": "The ID of the call set.", - "type": "string", - "required": true - } + "referenceName": { + "description": "The reference sequence name, for example `chr1`,\n`1`, or `chrX`.", + "type": "string" + } + }, + "id": "Range", + "description": "A 0-based half-open genomic coordinate range for search requests.", + "type": "object" + }, + "VariantSet": { + "description": "A variant set is a collection of call sets and variants. It contains summary\nstatistics of those contents. A variant set belongs to a dataset.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "type": "object", + "properties": { + "referenceBounds": { + "description": "A list of all references used by the variants in a variant set\nwith associated coordinate upper bounds for each one.", + "items": { + "$ref": "ReferenceBound" }, - "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}" + "type": "array" }, - "patch": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "updateMask": { - "format": "google-fieldmask", - "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.", - "type": "string", - "location": "query" - }, - "callSetId": { - "location": "path", - "description": "The ID of the call set to be updated.", - "type": "string", - "required": true - } + "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" + }, + "datasetId": { + "description": "The dataset to which this variant set belongs.", + "type": "string" + }, + "name": { + "description": "User-specified, mutable name.", + "type": "string" + }, + "referenceSetId": { + "description": "The reference set to which the variant set is mapped. The reference set\ndescribes the alignment provenance of the variant set, while the\n`referenceBounds` describe the shape of the actual variant data. The\nreference set's reference names are a superset of those found in the\n`referenceBounds`.\n\nFor example, given a variant set that is mapped to the GRCh38 reference set\nand contains a single variant on reference 'X', `referenceBounds` would\ncontain only an entry for 'X', while the associated reference set\nenumerates all possible references: '1', '2', 'X', 'Y', 'MT', etc.", + "type": "string" + }, + "metadata": { + "description": "The metadata associated with this variant set.", + "items": { + "$ref": "VariantSetMetadata" }, - "flatPath": "v1/callsets/{callSetId}", - "id": "genomics.callsets.patch", - "path": "v1/callsets/{callSetId}", - "request": { - "$ref": "CallSet" + "type": "array" + } + }, + "id": "VariantSet" + }, + "ReferenceBound": { + "properties": { + "upperBound": { + "format": "int64", + "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", + "type": "string" + }, + "referenceName": { + "description": "The name of the reference associated with this reference bound.", + "type": "string" + } + }, + "id": "ReferenceBound", + "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", + "type": "object" + }, + "BatchCreateAnnotationsResponse": { + "type": "object", + "properties": { + "entries": { + "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", + "items": { + "$ref": "Entry" }, - "description": "Updates a call set.\n\nFor the definitions of call sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "response": { + "type": "array" + } + }, + "id": "BatchCreateAnnotationsResponse" + }, + "SearchCallSetsResponse": { + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "callSets": { + "description": "The list of matching call sets.", + "items": { "$ref": "CallSet" }, - "parameterOrder": [ - "callSetId" - ], - "httpMethod": "PATCH" + "type": "array" } - } + }, + "id": "SearchCallSetsResponse", + "description": "The call set search response.", + "type": "object" }, - "annotationsets": { - "methods": { - "delete": { - "description": "Deletes an annotation set. Caller must have WRITE permission\nfor the associated annotation set.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" + "Variant": { + "description": "A variant represents a change in DNA sequence relative to a reference\nsequence. For example, a variant could represent a SNP or an insertion.\nVariants belong to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach of the calls on a variant represent a determination of genotype with\nrespect to that variant. For example, a call might assign probability of 0.32\nto the occurrence of a SNP named rs1234 in a sample named NA12345. A call\nbelongs to a call set, which contains related calls typically from one\nsample.", + "type": "object", + "properties": { + "referenceBases": { + "description": "The reference bases for this variant. They start at the given\nposition.", + "type": "string" + }, + "names": { + "description": "Names for the variant, for example a RefSNP ID.", + "items": { + "type": "string" }, - "parameterOrder": [ - "annotationSetId" - ], - "parameters": { - "annotationSetId": { - "location": "path", - "description": "The ID of the annotation set to be deleted.", - "type": "string", - "required": true - } + "type": "array" + }, + "alternateBases": { + "description": "The bases that appear instead of the reference bases.", + "items": { + "type": "string" }, - "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.delete" + "type": "array" }, - "search": { - "request": { - "$ref": "SearchAnnotationSetsRequest" + "end": { + "format": "int64", + "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.", + "type": "string" + }, + "filter": { + "description": "A list of filters (normally quality filters) this variant has failed.\n`PASS` indicates this variant has passed all filters.", + "items": { + "type": "string" }, - "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.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchAnnotationSetsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/annotationsets/search", - "path": "v1/annotationsets/search", - "id": "genomics.annotationsets.search" + "type": "array" }, - "get": { - "description": "Gets an annotation set. Caller must have READ permission for\nthe associated dataset.", - "response": { - "$ref": "AnnotationSet" - }, - "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": { - "description": "The ID of the annotation set to be retrieved.", - "type": "string", - "required": true, - "location": "path" - } + "calls": { + "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", + "items": { + "$ref": "VariantCall" }, - "flatPath": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.get", - "path": "v1/annotationsets/{annotationSetId}" + "type": "array" }, - "update": { - "request": { - "$ref": "AnnotationSet" - }, - "description": "Updates an annotation set. The update must respect all mutability\nrestrictions and other invariants described on the annotation set resource.\nCaller must have WRITE permission for the associated dataset.", - "httpMethod": "PUT", - "parameterOrder": [ - "annotationSetId" - ], - "response": { - "$ref": "AnnotationSet" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "updateMask": { - "format": "google-fieldmask", - "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.", - "type": "string", - "location": "query" + "created": { + "format": "int64", + "description": "The date this variant was created, in milliseconds from the epoch.", + "type": "string" + }, + "start": { + "format": "int64", + "description": "The position at which this variant occurs (0-based).\nThis corresponds to the first base of the string of reference bases.", + "type": "string" + }, + "quality": { + "format": "double", + "description": "A measure of how likely this variant is to be real.\nA higher value is better.", + "type": "number" + }, + "id": { + "description": "The server-generated variant ID, unique across all variants.", + "type": "string" + }, + "variantSetId": { + "description": "The ID of the variant set this variant belongs to.", + "type": "string" + }, + "referenceName": { + "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" }, - "annotationSetId": { - "location": "path", - "description": "The ID of the annotation set to be updated.", - "type": "string", - "required": true - } + "type": "array" }, - "flatPath": "v1/annotationsets/{annotationSetId}", - "path": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.update" + "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" + } + }, + "id": "Variant" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" }, - "create": { - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotationsets", - "id": "genomics.annotationsets.create", - "path": "v1/annotationsets", - "description": "Creates a new annotation set. Caller must have WRITE permission for the\nassociated dataset.\n\nThe following fields are required:\n\n * datasetId\n * referenceSetId\n\nAll other fields may be optionally specified, unless documented as being\nserver-generated (for example, the `id` field).", - "request": { - "$ref": "AnnotationSet" - }, - "response": { - "$ref": "AnnotationSet" + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "POST" + "type": "array" } - } + }, + "id": "ListOperationsResponse" }, - "variants": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "variantId" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "variantId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the variant to be deleted." - } - }, - "flatPath": "v1/variants/{variantId}", - "path": "v1/variants/{variantId}", - "id": "genomics.variants.delete", - "description": "Deletes a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" + "OperationMetadata": { + "properties": { + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" }, - "merge": { - "request": { - "$ref": "MergeVariantsRequest" - }, - "description": "Merges the given variants with existing variants.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nEach variant will be\nmerged with an existing variant that matches its reference sequence,\nstart, end, reference bases, and alternative bases. If no such variant\nexists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant. Variant info fields are merged as\nspecified in the\ninfoMergeConfig\nfield of the MergeVariantsRequest.\n\nPlease exercise caution when using this method! It is easy to introduce\nmistakes in existing variants and difficult to back out of them. For\nexample,\nsuppose you were trying to merge a new variant with an existing one and\nboth\nvariants contain calls that belong to callsets with the same callset ID.\n\n // Existing variant - irrelevant fields trimmed for clarity\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 0,\n 1\n ],\n }\n ]\n }\n\n // New variant with conflicting call information\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThe resulting merged variant would overwrite the existing calls with those\nfrom the new variant:\n\n {\n \"variantSetId\": \"10473108253681171589\",\n \"referenceName\": \"1\",\n \"start\": \"10582\",\n \"referenceBases\": \"G\",\n \"alternateBases\": [\n \"A\"\n ],\n \"calls\": [\n {\n \"callSetId\": \"10473108253681171589-0\",\n \"callSetName\": \"CALLSET0\",\n \"genotype\": [\n 1,\n 1\n ],\n }\n ]\n }\n\nThis may be the desired outcome, but it is up to the user to determine if\nif that is indeed the case.", - "response": { - "$ref": "Empty" + "events": { + "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export.", + "items": { + "$ref": "OperationEvent" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/variants:merge", - "id": "genomics.variants.merge", - "path": "v1/variants:merge" + "type": "array" }, - "import": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.read_write", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1/variants:import", - "path": "v1/variants:import", - "id": "genomics.variants.import", - "request": { - "$ref": "ImportVariantsRequest" - }, - "description": "Creates variant data by asynchronously importing the provided information.\n\nFor the definitions of variant sets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThe variants for import will be merged with any existing variant that\nmatches its reference sequence, start, end, reference bases, and\nalternative bases. If no such variant exists, a new one will be created.\n\nWhen variants are merged, the call information from the new variant\nis added to the existing variant, and Variant info fields are merged\nas specified in\ninfoMergeConfig.\nAs a special case, for single-sample VCF files, QUAL and FILTER fields will\nbe moved to the call level; these are sometimes interpreted in a\ncall-specific context.\nImported VCF headers are appended to the metadata already in a variant set." + "endTime": { + "format": "google-datetime", + "description": "The time at which the job stopped running.", + "type": "string" }, - "create": { - "flatPath": "v1/variants", - "path": "v1/variants", - "id": "genomics.variants.create", - "request": { - "$ref": "Variant" - }, - "description": "Creates a new variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Variant" + "startTime": { + "format": "google-datetime", + "description": "The time at which the job began to run.", + "type": "string" + }, + "request": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {} + "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" }, - "search": { - "request": { - "$ref": "SearchVariantsRequest" + "runtimeMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "Gets a list of variants matching the criteria.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", - "response": { - "$ref": "SearchVariantsResponse" + "description": "Runtime metadata on this Operation.", + "type": "object" + }, + "labels": { + "additionalProperties": { + "type": "string" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": {}, - "flatPath": "v1/variants/search", - "id": "genomics.variants.search", - "path": "v1/variants/search" + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" }, - "patch": { - "id": "genomics.variants.patch", - "path": "v1/variants/{variantId}", - "description": "Updates a variant.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", - "request": { - "$ref": "Variant" - }, - "response": { - "$ref": "Variant" - }, - "parameterOrder": [ - "variantId" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "variantId": { - "description": "The ID of the variant to be updated.", - "type": "string", - "required": true, - "location": "path" - } + "createTime": { + "format": "google-datetime", + "description": "The time at which the job was submitted to the Genomics service.", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" + } + }, + "id": "OperationMetadata", + "description": "Metadata describing an Operation.", + "type": "object" + }, + "SearchVariantsRequest": { + "properties": { + "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.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/variants/{variantId}" + "type": "array" }, - "get": { - "response": { - "$ref": "Variant" + "end": { + "format": "int64", + "description": "The end of the window, 0-based exclusive. If unspecified or 0, defaults to\nthe length of the reference.", + "type": "string" + }, + "maxCalls": { + "format": "int32", + "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.", + "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": { + "format": "int32", + "description": "The maximum number of variants to return in a single page. If unspecified,\ndefaults to 5000. The maximum value is 10000.", + "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.", + "items": { + "type": "string" }, - "httpMethod": "GET", - "parameterOrder": [ - "variantId" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "variantId": { - "description": "The ID of the variant.", - "type": "string", - "required": true, - "location": "path" - } + "type": "array" + }, + "variantName": { + "description": "Only return variants which have exactly this name.", + "type": "string" + }, + "start": { + "format": "int64", + "description": "The beginning of the window (0-based, inclusive) for which\noverlapping variants should be returned. If unspecified, defaults to 0.", + "type": "string" + } + }, + "id": "SearchVariantsRequest", + "description": "The variant search request.", + "type": "object" + }, + "SearchReadGroupSetsRequest": { + "description": "The read group set search request.", + "type": "object", + "properties": { + "datasetIds": { + "description": "Restricts this query to read group sets within the given datasets. At least\none ID must be provided.", + "items": { + "type": "string" }, - "flatPath": "v1/variants/{variantId}", - "id": "genomics.variants.get", - "path": "v1/variants/{variantId}", - "description": "Gets a variant by ID.\n\nFor the definitions of variants and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" + "type": "array" + }, + "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" + }, + "name": { + "description": "Only return read group sets for which a substring of the name matches this\nstring.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 256. The maximum value is 1024.", + "type": "integer" } - } + }, + "id": "SearchReadGroupSetsRequest" }, - "references": { - "methods": { - "search": { - "response": { - "$ref": "SearchReferencesResponse" + "SearchAnnotationsResponse": { + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "annotations": { + "description": "The matching annotations.", + "items": { + "$ref": "Annotation" }, - "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", - "id": "genomics.references.search", - "path": "v1/references/search", - "request": { - "$ref": "SearchReferencesRequest" + "type": "array" + } + }, + "id": "SearchAnnotationsResponse", + "type": "object" + }, + "SearchReadsResponse": { + "description": "The read search response.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "alignments": { + "description": "The list of matching alignments sorted by mapped genomic coordinate,\nif any, ascending in position within the same reference. Unmapped reads,\nwhich have no position, are returned contiguously and are sorted in\nascending lexicographic order by fragment name.", + "items": { + "$ref": "Read" }, - "description": "Searches for references which match the given criteria.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.searchReferences](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L146)." + "type": "array" + } + }, + "id": "SearchReadsResponse" + }, + "ClinicalCondition": { + "properties": { + "conceptId": { + "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", + "type": "string" }, - "get": { - "path": "v1/references/{referenceId}", - "id": "genomics.references.get", - "description": "Gets a reference.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReference](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L158).", - "httpMethod": "GET", - "response": { - "$ref": "Reference" + "names": { + "description": "A set of names for the condition.", + "items": { + "type": "string" }, - "parameterOrder": [ - "referenceId" - ], - "parameters": { - "referenceId": { - "description": "The ID of the reference.", - "type": "string", - "required": true, - "location": "path" - } + "type": "array" + }, + "omimId": { + "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", + "type": "string" + }, + "externalIds": { + "description": "The set of external IDs for this condition.", + "items": { + "$ref": "ExternalId" }, - "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}" + "type": "array" } }, - "resources": { - "bases": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListBasesResponse" - }, - "parameterOrder": [ - "referenceId" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "parameters": { - "end": { - "format": "int64", - "description": "The end position (0-based, exclusive) of this query. Defaults to the length\nof this reference.", - "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": { - "format": "int32", - "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).", - "type": "integer", - "location": "query" - }, - "start": { - "location": "query", - "format": "int64", - "description": "The start position (0-based) of this query. Defaults to 0.", - "type": "string" - }, - "referenceId": { - "description": "The ID of the reference.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/references/{referenceId}/bases", - "path": "v1/references/{referenceId}/bases", - "id": "genomics.references.bases.list", - "description": "Lists the bases in a reference, optionally restricted to a range.\n\nFor the definitions of references and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nImplements\n[GlobalAllianceApi.getReferenceBases](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L221)." - } - } + "id": "ClinicalCondition", + "type": "object" + }, + "Program": { + "type": "object", + "properties": { + "prevProgramId": { + "description": "The ID of the program run before this one.", + "type": "string" + }, + "commandLine": { + "description": "The command line used to run this program.", + "type": "string" + }, + "version": { + "description": "The version of the program run.", + "type": "string" + }, + "id": { + "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", + "type": "string" + }, + "name": { + "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'.", + "type": "string" } - } + }, + "id": "Program" }, - "datasets": { - "methods": { - "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" + "CoverageBucket": { + "properties": { + "meanCoverage": { + "format": "float", + "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", + "type": "number" + }, + "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" + }, + "ComputeEngine": { + "properties": { + "zone": { + "description": "The availability zone in which the instance resides.", + "type": "string" + }, + "diskNames": { + "description": "The names of the disks that were created for this pipeline.", + "items": { + "type": "string" }, - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "type": "string", - "required": true, - "pattern": "^datasets/[^/]+$" - } + "type": "array" + }, + "machineType": { + "description": "The machine type of the instance.", + "type": "string" + }, + "instanceName": { + "description": "The instance on which the operation is running.", + "type": "string" + } + }, + "id": "ComputeEngine", + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "type": "object" + }, + "ExternalId": { + "properties": { + "id": { + "description": "The id used by the source of this data.", + "type": "string" + }, + "sourceName": { + "description": "The name of the source of this data.", + "type": "string" + } + }, + "id": "ExternalId", + "type": "object" + }, + "Reference": { + "properties": { + "name": { + "description": "The name of this reference, for example `22`.", + "type": "string" + }, + "md5checksum": { + "description": "MD5 of the upper-case sequence excluding all whitespace characters (this\nis equivalent to SQ:M5 in SAM). This value is represented in lower case\nhexadecimal format.", + "type": "string" + }, + "id": { + "description": "The server-generated reference ID, unique across all references.", + "type": "string" + }, + "length": { + "format": "int64", + "description": "The length of this reference's sequence.", + "type": "string" + }, + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "type": "array" + }, + "ncbiTaxonId": { + "format": "int32", + "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.", + "type": "integer" + }, + "sourceUri": { + "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file.", + "type": "string" + } + }, + "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.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "type": "object" + }, + "VariantSetMetadata": { + "description": "Metadata describes a single piece of variant call metadata.\nThese data include a top level key and either a single value string (value)\nor a list of key-value pairs (info.)\nValue and info are mutually exclusive.", + "type": "object", + "properties": { + "type": { + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" ], - "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "genomics.datasets.testIamPermissions", - "description": "Returns permissions that a caller has on the specified resource.\nSee \u003ca href=\"/iam/docs/managing-policies#testing_permissions\"\u003eTesting\nPermissions\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "request": { - "$ref": "TestIamPermissionsRequest" - } + "enum": [ + "TYPE_UNSPECIFIED", + "INTEGER", + "FLOAT", + "FLAG", + "CHARACTER", + "STRING" + ], + "description": "The type of data. Possible types include: Integer, Float,\nFlag, Character, and String.", + "type": "string" }, - "delete": { - "description": "Deletes a dataset and all of its contents (all read group sets,\nreference sets, variant sets, call sets, annotation sets, etc.)\nThis is reversible (up to one week after the deletion) via\nthe\ndatasets.undelete\noperation.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" }, - "parameterOrder": [ - "datasetId" - ], - "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset to be deleted.", - "type": "string", - "required": true - } + "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": { + "description": "The value field for simple metadata", + "type": "string" + }, + "id": { + "description": "User-provided ID field, not enforced by this API.\nTwo or more pieces of structured metadata with identical\nid and key fields are considered equivalent.", + "type": "string" + }, + "number": { + "description": "The number of values that can be included in a field described by this\nmetadata.", + "type": "string" + }, + "key": { + "description": "The top-level key.", + "type": "string" + }, + "description": { + "description": "A textual description of this metadata.", + "type": "string" + } + }, + "id": "VariantSetMetadata" + }, + "SearchVariantSetsRequest": { + "description": "The search variant sets 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" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", + "type": "integer" + }, + "datasetIds": { + "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "type": "array" + } + }, + "id": "SearchVariantSetsRequest" + }, + "SearchReferenceSetsRequest": { + "properties": { + "md5checksums": { + "description": "If present, return reference sets for which the\nmd5checksum matches exactly.", + "items": { + "type": "string" + }, + "type": "array" + }, + "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" + }, + "accessions": { + "description": "If present, return reference sets for which a prefix of any of\nsourceAccessions\nmatch any of these strings. Accession numbers typically have a main number\nand a version, for example `NC_000001.11`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 4096.", + "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": "SearchReferenceSetsRequest", + "type": "object" + }, + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", + "properties": { + "policy": { + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.", + "$ref": "Policy" + } + }, + "id": "SetIamPolicyRequest" + }, + "MergeVariantsRequest": { + "type": "object", + "properties": { + "variants": { + "description": "The variants to be merged with existing variants.", + "items": { + "$ref": "Variant" + }, + "type": "array" + }, + "infoMergeConfig": { + "additionalProperties": { + "enum": [ + "INFO_MERGE_OPERATION_UNSPECIFIED", + "IGNORE_NEW", + "MOVE_TO_CALLS" + ], + "type": "string" + }, + "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them.", + "type": "object" + }, + "variantSetId": { + "description": "The destination variant set.", + "type": "string" + } + }, + "id": "MergeVariantsRequest" + }, + "Read": { + "description": "A read alignment describes a linear alignment of a string of DNA to a\nreference sequence, in addition to metadata\nabout the fragment (the molecule of DNA sequenced) and the read (the bases\nwhich were read by the sequencer). A read is equivalent to a line in a SAM\nfile. A read belongs to exactly one read group and exactly one\nread group set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\n### Reverse-stranded reads\n\nMapped reads (reads having a non-null `alignment`) can be aligned to either\nthe forward or the reverse strand of their associated reference. Strandedness\nof a mapped read is encoded by `alignment.position.reverseStrand`.\n\nIf we consider the reference to be a forward-stranded coordinate space of\n`[0, reference.length)` with `0` as the left-most position and\n`reference.length` as the right-most position, reads are always aligned left\nto right. That is, `alignment.position.position` always refers to the\nleft-most reference coordinate and `alignment.cigar` describes the alignment\nof this read to the reference from left to right. All per-base fields such as\n`alignedSequence` and `alignedQuality` share this same left-to-right\norientation; this is true of reads which are aligned to either strand. For\nreverse-stranded reads, this means that `alignedSequence` is the reverse\ncomplement of the bases that were originally reported by the sequencing\nmachine.\n\n### Generating a reference-aligned sequence string\n\nWhen interacting with mapped reads, it's often useful to produce a string\nrepresenting the local alignment of the read to reference. The following\npseudocode demonstrates one way of doing this:\n\n out = \"\"\n offset = 0\n for c in read.alignment.cigar {\n switch c.operation {\n case \"ALIGNMENT_MATCH\", \"SEQUENCE_MATCH\", \"SEQUENCE_MISMATCH\":\n out += read.alignedSequence[offset:offset+c.operationLength]\n offset += c.operationLength\n break\n case \"CLIP_SOFT\", \"INSERT\":\n offset += c.operationLength\n break\n case \"PAD\":\n out += repeat(\"*\", c.operationLength)\n break\n case \"DELETE\":\n out += repeat(\"-\", c.operationLength)\n break\n case \"SKIP\":\n out += repeat(\" \", c.operationLength)\n break\n case \"CLIP_HARD\":\n break\n }\n }\n return out\n\n### Converting to SAM's CIGAR string\n\nThe following pseudocode generates a SAM CIGAR string from the\n`cigar` field. Note that this is a lossy conversion\n(`cigar.referenceSequence` is lost).\n\n cigarMap = {\n \"ALIGNMENT_MATCH\": \"M\",\n \"INSERT\": \"I\",\n \"DELETE\": \"D\",\n \"SKIP\": \"N\",\n \"CLIP_SOFT\": \"S\",\n \"CLIP_HARD\": \"H\",\n \"PAD\": \"P\",\n \"SEQUENCE_MATCH\": \"=\",\n \"SEQUENCE_MISMATCH\": \"X\",\n }\n cigarStr = \"\"\n for c in read.alignment.cigar {\n cigarStr += c.operationLength + cigarMap[c.operation]\n }\n return cigarStr", + "type": "object", + "properties": { + "readGroupSetId": { + "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", + "type": "string" + }, + "duplicateFragment": { + "description": "The fragment is a PCR or optical duplicate (SAM flag 0x400).", + "type": "boolean" + }, + "readNumber": { + "format": "int32", + "description": "The read number in sequencing. 0-based and less than numberReads. This\nfield replaces SAM flag 0x40 and 0x80.", + "type": "integer" + }, + "readGroupId": { + "description": "The ID of the read group this read belongs to. A read belongs to exactly\none read group. This is a server-generated ID which is distinct from SAM's\nRG tag (for that value, see\nReadGroup.name).", + "type": "string" + }, + "alignedSequence": { + "description": "The bases of the read sequence contained in this alignment record,\n**without CIGAR operations applied** (equivalent to SEQ in SAM).\n`alignedSequence` and `alignedQuality` may be\nshorter than the full read sequence and quality. This will occur if the\nalignment is part of a chimeric alignment, or if the read was trimmed. When\nthis occurs, the CIGAR for this read will begin/end with a hard clip\noperator that will indicate the length of the excised sequence.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" + }, + "description": "A map of additional read alignment information. This must be of the form\nmap\u003cstring, string[]\u003e (string key mapping to a list of string values).", + "type": "object" + }, + "nextMatePosition": { + "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": { + "format": "int32", + "description": "The observed length of the fragment, equivalent to TLEN in SAM.", + "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.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "alignment": { + "$ref": "LinearAlignment", + "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads." + }, + "numberReads": { + "format": "int32", + "description": "The number of reads in the fragment (extension to SAM flag 0x1).", + "type": "integer" + }, + "id": { + "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`.", + "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.", + "type": "string" + } + }, + "id": "Read" + }, + "BatchCreateAnnotationsRequest": { + "type": "object", + "properties": { + "annotations": { + "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", + "items": { + "$ref": "Annotation" + }, + "type": "array" + }, + "requestId": { + "description": "A unique request ID which enables the server to detect duplicated requests.\nIf provided, duplicated requests will result in the same response; if not\nprovided, duplicated requests may result in duplicated data. For a given\nannotation set, callers should not reuse `request_id`s when writing\ndifferent batches of annotations - behavior in this case is undefined.\nA common approach is to use a UUID. For batch jobs where worker crashes are\na possibility, consider using some unique variant of a worker or run ID.", + "type": "string" + } + }, + "id": "BatchCreateAnnotationsRequest" + }, + "CigarUnit": { + "description": "A single CIGAR operation.", + "type": "object", + "properties": { + "operationLength": { + "format": "int64", + "description": "The number of genomic bases that the operation runs for. Required.", + "type": "string" + }, + "operation": { + "enum": [ + "OPERATION_UNSPECIFIED", + "ALIGNMENT_MATCH", + "INSERT", + "DELETE", + "SKIP", + "CLIP_SOFT", + "CLIP_HARD", + "PAD", + "SEQUENCE_MATCH", + "SEQUENCE_MISMATCH" ], - "flatPath": "v1/datasets/{datasetId}", - "path": "v1/datasets/{datasetId}", - "id": "genomics.datasets.delete" + "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`." + ] + }, + "referenceSequence": { + "description": "`referenceSequence` is only used at mismatches\n(`SEQUENCE_MISMATCH`) and deletions (`DELETE`).\nFilling this field replaces SAM's MD tag. If the relevant information is\nnot available, this field is unset.", + "type": "string" + } + }, + "id": "CigarUnit" + }, + "ReferenceSet": { + "description": "A reference set is a set of references which typically comprise a reference\nassembly for a species, such as `GRCh38` which is representative\nof the human genome. A reference set defines a common coordinate space for\ncomparing reference-aligned experimental data. A reference set contains 1 or\nmore references.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "type": "object", + "properties": { + "referenceIds": { + "description": "The IDs of the reference objects that are part of this set.\n`Reference.md5checksum` must be unique within this set.", + "items": { + "type": "string" + }, + "type": "array" }, - "list": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListDatasetsResponse" + "assemblyId": { + "description": "Public id of this reference set, such as `GRCh37`.", + "type": "string" + }, + "md5checksum": { + "description": "Order-independent MD5 checksum which identifies this reference set. The\nchecksum is computed by sorting all lower case hexidecimal string\n`reference.md5checksum` (for all reference in this set) in\nascending lexicographic order, concatenating, and taking the MD5 of that\nvalue. The resulting value is represented in lower case hexadecimal format.", + "type": "string" + }, + "id": { + "description": "The server-generated reference set ID, unique across all reference sets.", + "type": "string" + }, + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "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": { - "format": "int32", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 50. The maximum value is 1024.", - "type": "integer", - "location": "query" + "type": "array" + }, + "description": { + "description": "Free text description of this reference set.", + "type": "string" + }, + "sourceUri": { + "description": "The URI from which the references were obtained.", + "type": "string" + }, + "ncbiTaxonId": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "ReferenceSet" + }, + "AnnotationSet": { + "properties": { + "datasetId": { + "description": "The dataset to which this annotation set belongs.", + "type": "string" + }, + "sourceUri": { + "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", + "type": "string" + }, + "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.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" }, - "projectId": { - "location": "query", - "description": "Required. The Google Cloud project ID to list datasets for.", - "type": "string" - } + "type": "array" }, - "flatPath": "v1/datasets", - "path": "v1/datasets", - "id": "genomics.datasets.list", - "description": "Lists datasets within a project.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" + "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" }, - "create": { - "response": { - "$ref": "Dataset" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "type": { + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" ], - "parameters": {}, - "flatPath": "v1/datasets", - "id": "genomics.datasets.create", - "path": "v1/datasets", - "request": { - "$ref": "Dataset" - }, - "description": "Creates a new dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)" + "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." + ] }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "type": "string", - "required": true, - "pattern": "^datasets/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "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\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", - "request": { - "$ref": "SetIamPolicyRequest" - } + "id": { + "description": "The server-generated annotation set ID, unique across all annotation sets.", + "type": "string" + } + }, + "id": "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" + }, + "Transcript": { + "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA.", + "type": "object", + "properties": { + "codingSequence": { + "$ref": "CodingSequence", + "description": "The range of the coding sequence for this transcript, if any. To determine\nthe exact ranges of coding sequence, intersect this range with those of the\nexons, if any. If there are any\nexons, the\ncodingSequence must start\nand end within them.\n\nNote that in some cases, the reference genome will not exactly match the\nobserved mRNA transcript e.g. due to variance in the source genome from\nreference. In these cases,\nexon.frame will not necessarily\nmatch the expected reference reading frame and coding exon reference bases\ncannot necessarily be concatenated to produce the original transcript mRNA." }, - "getIamPolicy": { - "flatPath": "v1/datasets/{datasetsId}:getIamPolicy", - "id": "genomics.datasets.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for the dataset. This is empty if the\npolicy or resource does not exist.\n\nSee \u003ca href=\"/iam/docs/managing-policies#getting_a_policy\"\u003eGetting a\nPolicy\u003c/a\u003e for more information.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "resource": { - "type": "string", - "required": true, - "pattern": "^datasets/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`." - } - } + "geneId": { + "description": "The annotation ID of the gene from which this transcript is transcribed.", + "type": "string" }, - "patch": { - "request": { - "$ref": "Dataset" - }, - "description": "Updates a dataset.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis method supports patch semantics.", - "response": { - "$ref": "Dataset" - }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "datasetId": { - "description": "The ID of the dataset to be updated.", - "type": "string", - "required": true, - "location": "path" - }, - "updateMask": { - "location": "query", - "format": "google-fieldmask", - "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.", - "type": "string" - } + "exons": { + "description": "The \u003ca href=\"http://en.wikipedia.org/wiki/Exon\"\u003eexons\u003c/a\u003e that compose\nthis transcript. This field should be unset for genomes where transcript\nsplicing does not occur, for example prokaryotes.\n\nIntrons are regions of the transcript that are not included in the\nspliced RNA product. Though not explicitly modeled here, intron ranges can\nbe deduced; all regions of this transcript that are not exons are introns.\n\nExonic sequences do not necessarily code for a translational product\n(amino acids). Only the regions of exons bounded by the\ncodingSequence correspond\nto coding DNA sequence.\n\nExons are ordered by start position and may not overlap.", + "items": { + "$ref": "Exon" }, - "flatPath": "v1/datasets/{datasetId}", - "id": "genomics.datasets.patch", - "path": "v1/datasets/{datasetId}" + "type": "array" + } + }, + "id": "Transcript" + }, + "Experiment": { + "type": "object", + "properties": { + "sequencingCenter": { + "description": "The sequencing center used as part of this experiment.", + "type": "string" }, - "get": { - "flatPath": "v1/datasets/{datasetId}", - "id": "genomics.datasets.get", - "path": "v1/datasets/{datasetId}", - "description": "Gets a dataset by ID.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", - "response": { + "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" + }, + "instrumentModel": { + "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", + "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" + } + }, + "id": "Experiment" + }, + "ListDatasetsResponse": { + "description": "The dataset list response.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "The continuation token, which is used to page through large result sets.\nProvide this value in a subsequent request to return the next page of\nresults. This field will be empty if there aren't any additional results.", + "type": "string" + }, + "datasets": { + "description": "The list of matching Datasets.", + "items": { "$ref": "Dataset" }, - "parameterOrder": [ - "datasetId" - ], - "httpMethod": "GET", - "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset.", - "type": "string", - "required": true - } + "type": "array" + } + }, + "id": "ListDatasetsResponse" + }, + "TestIamPermissionsRequest": { + "properties": { + "permissions": { + "description": "REQUIRED: The set of permissions to check for the 'resource'.\nPermissions with wildcards (such as '*' or 'storage.*') are not allowed.\nAllowed permissions are:\n\n* `genomics.datasets.create`\n* `genomics.datasets.delete`\n* `genomics.datasets.get`\n* `genomics.datasets.list`\n* `genomics.datasets.update`\n* `genomics.datasets.getIamPolicy`\n* `genomics.datasets.setIamPolicy`", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ] + "type": "array" + } + }, + "id": "TestIamPermissionsRequest", + "description": "Request message for `TestIamPermissions` method.", + "type": "object" + }, + "Exon": { + "type": "object", + "properties": { + "start": { + "format": "int64", + "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.", + "type": "string" }, - "undelete": { - "request": { - "$ref": "UndeleteDatasetRequest" + "frame": { + "format": "int32", + "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.", + "type": "integer" + }, + "end": { + "format": "int64", + "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.", + "type": "string" + } + }, + "id": "Exon" + }, + "ExportReadGroupSetRequest": { + "properties": { + "referenceNames": { + "description": "The reference names to export. If this is not specified, all reference\nsequences, including unmapped reads, are exported.\nUse `*` to export only unmapped reads.", + "items": { + "type": "string" }, - "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nFor the definitions of datasets and other genomics resources, see\n[Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)\n\nThis operation is only possible for a week after the deletion occurred.", - "httpMethod": "POST", - "parameterOrder": [ - "datasetId" - ], - "response": { - "$ref": "Dataset" + "type": "array" + }, + "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" + }, + "projectId": { + "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", + "type": "string" + } + }, + "id": "ExportReadGroupSetRequest", + "description": "The read group set export request.", + "type": "object" + }, + "CallSet": { + "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.\n\nFor more genomics resource definitions, see [Fundamentals of Google\nGenomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics)", + "type": "object", + "properties": { + "name": { + "description": "The call set name.", + "type": "string" + }, + "info": { + "additionalProperties": { + "items": { + "type": "any" + }, + "type": "array" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset to be undeleted.", - "type": "string", - "required": true - } + "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" + }, + "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).", + "items": { + "type": "string" }, - "flatPath": "v1/datasets/{datasetId}:undelete", - "path": "v1/datasets/{datasetId}:undelete", - "id": "genomics.datasets.undelete" + "type": "array" + }, + "id": { + "description": "The server-generated call set ID, unique across all call sets.", + "type": "string" + }, + "created": { + "format": "int64", + "description": "The date this call set was created in milliseconds from the epoch.", + "type": "string" + }, + "sampleId": { + "description": "The sample ID this call set corresponds to.", + "type": "string" } - } + }, + "id": "CallSet" } }, - "parameters": { - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" - }, - "$.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": { - "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.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean", - "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": "v1", + "baseUrl": "https://genomics.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/genomics.readonly": { + "description": "View Genomics data" + }, + "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/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/bigquery": { + "description": "View and manage your data in Google BigQuery" + } + } } - } + }, + "kind": "discovery#restDescription", + "description": "Upload, process, query, and search Genomics data in the cloud.", + "servicePath": "", + "rootUrl": "https://genomics.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "genomics", + "batchPath": "batch", + "documentationLink": "https://cloud.google.com/genomics", + "id": "genomics:v1", + "revision": "20170718", + "title": "Genomics API" } diff --git a/DiscoveryJson/genomics_v1alpha2.json b/DiscoveryJson/genomics_v1alpha2.json index 2b81192540..1bf3bb1cf8 100644 --- a/DiscoveryJson/genomics_v1alpha2.json +++ b/DiscoveryJson/genomics_v1alpha2.json @@ -1,219 +1,107 @@ { - "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": "v1alpha2", - "baseUrl": "https://genomics.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "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/genomics": { - "description": "View and manage Genomics data" - } - } - } - }, - "description": "Upload, process, query, and search Genomics data in the cloud.", - "kind": "discovery#restDescription", - "servicePath": "", - "rootUrl": "https://genomics.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "genomics", - "batchPath": "batch", - "documentationLink": "https://cloud.google.com/genomics", - "id": "genomics:v1alpha2", - "revision": "20170717", - "title": "Genomics API", - "ownerName": "Google", - "discoveryVersion": "v1", "resources": { - "operations": { + "pipelines": { "methods": { - "cancel": { + "run": { + "description": "Runs a pipeline. If `pipelineId` is specified in the request, then\nrun a saved pipeline. If `ephemeralPipeline` is specified, then run\nthat pipeline once without saving a copy.\n\nThe caller must have READ permission to the project where the pipeline\nis stored and WRITE permission to the project where the pipeline will be\nrun, as VMs will be created and storage will be used.\n\nIf a pipeline operation is still running after 6 days, it will be canceled.", "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "name": { - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "type": "string", - "required": true - } + "$ref": "RunPipelineRequest" }, - "flatPath": "v1alpha2/operations/{operationsId}:cancel", - "path": "v1alpha2/{+name}:cancel", - "id": "genomics.operations.cancel" - }, - "get": { - "httpMethod": "GET", "response": { "$ref": "Operation" }, - "parameterOrder": [ - "name" - ], + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/genomics" ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^operations/.+$", - "location": "path" - } - }, - "flatPath": "v1alpha2/operations/{operationsId}", - "path": "v1alpha2/{+name}", - "id": "genomics.operations.get", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." + "flatPath": "v1alpha2/pipelines:run", + "id": "genomics.pipelines.run", + "path": "v1alpha2/pipelines:run" }, - "list": { - "description": "Lists operations that match the specified filter in the request.", - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "filter": { - "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "pattern": "^operations$", - "location": "path", - "description": "The name of the operation's parent resource.", - "type": "string", - "required": true - }, - "pageSize": { - "format": "int32", - "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/operations", - "path": "v1alpha2/{+name}", - "id": "genomics.operations.list" - } - } - }, - "pipelines": { - "methods": { "get": { - "path": "v1alpha2/pipelines/{pipelineId}", + "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" ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "pipelineId": { + "description": "Caller must have READ access to the project in which this pipeline\nis defined.", "type": "string", "required": true, - "location": "path", - "description": "Caller must have READ access to the project in which this pipeline\nis defined." + "location": "path" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines/{pipelineId}" + } }, "setOperationStatus": { + "flatPath": "v1alpha2/pipelines:setOperationStatus", + "id": "genomics.pipelines.setOperationStatus", + "path": "v1alpha2/pipelines:setOperationStatus", + "description": "Sets status of a given operation. Any new timestamps (as determined by\ndescription) are appended to TimestampEvents. Should only be called by VMs\ncreated by the Pipelines Service and not by end users.", + "request": { + "$ref": "SetOperationStatusRequest" + }, "response": { "$ref": "Empty" }, "parameterOrder": [], "httpMethod": "PUT", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v1alpha2/pipelines:setOperationStatus", - "id": "genomics.pipelines.setOperationStatus", - "path": "v1alpha2/pipelines:setOperationStatus", - "request": { - "$ref": "SetOperationStatusRequest" - }, - "description": "Sets status of a given operation. Any new timestamps (as determined by\ndescription) are appended to TimestampEvents. Should only be called by VMs\ncreated by the Pipelines Service and not by end users." + ] }, "delete": { - "httpMethod": "DELETE", + "description": "Deletes a pipeline based on ID.\n\nCaller must have WRITE permission to the project.", "response": { "$ref": "Empty" }, "parameterOrder": [ "pipelineId" ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "pipelineId": { + "description": "Caller must have WRITE access to the project in which this pipeline\nis defined.", "type": "string", "required": true, - "location": "path", - "description": "Caller must have WRITE access to the project in which this pipeline\nis defined." + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "flatPath": "v1alpha2/pipelines/{pipelineId}", - "path": "v1alpha2/pipelines/{pipelineId}", "id": "genomics.pipelines.delete", - "description": "Deletes a pipeline based on ID.\n\nCaller must have WRITE permission to the project." + "path": "v1alpha2/pipelines/{pipelineId}" }, "getControllerConfig": { + "description": "Gets controller configuration information. Should only be called\nby VMs created by the Pipelines Service and not by end users.", + "httpMethod": "GET", + "parameterOrder": [], "response": { "$ref": "ControllerConfig" }, - "parameterOrder": [], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "operationId": { "location": "query", @@ -221,19 +109,14 @@ "type": "string" }, "validationToken": { + "format": "uint64", "type": "string", - "location": "query", - "format": "uint64" + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "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." + "id": "genomics.pipelines.getControllerConfig" }, "list": { "httpMethod": "GET", @@ -247,9 +130,9 @@ ], "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": { "description": "Token to use to indicate where to start getting results.\nIf unspecified, returns the first page of results.", @@ -257,10 +140,10 @@ "location": "query" }, "pageSize": { - "location": "query", "format": "int32", "description": "Number of pipelines to return at once. Defaults to 256, and max\nis 2048.", - "type": "integer" + "type": "integer", + "location": "query" }, "projectId": { "location": "query", @@ -274,12 +157,6 @@ "description": "Lists pipelines.\n\nCaller must have READ permission to the project." }, "create": { - "id": "genomics.pipelines.create", - "path": "v1alpha2/pipelines", - "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" - }, "response": { "$ref": "Pipeline" }, @@ -290,47 +167,123 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1alpha2/pipelines" - }, - "run": { + "flatPath": "v1alpha2/pipelines", + "id": "genomics.pipelines.create", + "path": "v1alpha2/pipelines", + "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" + } + } + } + }, + "operations": { + "methods": { + "cancel": { "httpMethod": "POST", - "parameterOrder": [], + "parameterOrder": [ + "name" + ], "response": { - "$ref": "Operation" + "$ref": "Empty" + }, + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true, + "pattern": "^operations/.+$" + } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/genomics" ], - "parameters": {}, - "flatPath": "v1alpha2/pipelines:run", - "path": "v1alpha2/pipelines:run", - "id": "genomics.pipelines.run", + "flatPath": "v1alpha2/operations/{operationsId}:cancel", + "path": "v1alpha2/{+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": "RunPipelineRequest" + "$ref": "CancelOperationRequest" + } + }, + "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" }, - "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." - } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^operations/.+$", + "location": "path" + } + }, + "flatPath": "v1alpha2/operations/{operationsId}", + "path": "v1alpha2/{+name}", + "id": "genomics.operations.get" + }, + "list": { + "description": "Lists operations that match the specified filter in the request.", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ListOperationsResponse" + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "filter": { + "location": "query", + "description": "A string for filtering Operations.\nThe following filter fields are supported:\n\n* projectId: Required. Corresponds to\n OperationMetadata.projectId.\n* createTime: The time this job was created, in seconds from the\n [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `\u003e=` and/or `\u003c=`\n operators.\n* status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only\n one status may be specified.\n* labels.key where key is a label key.\n\nExamples:\n\n* `projectId = my-project AND createTime \u003e= 1432140000`\n* `projectId = my-project AND createTime \u003e= 1432140000 AND createTime \u003c= 1432150000 AND status = RUNNING`\n* `projectId = my-project AND labels.color = *`\n* `projectId = my-project AND labels.color = red`", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "location": "path", + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^operations$" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", + "type": "integer", + "location": "query" + } + }, + "flatPath": "v1alpha2/operations", + "id": "genomics.operations.list", + "path": "v1alpha2/{+name}" + } + } + } + }, + "parameters": { "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" }, "oauth_token": { "location": "query", @@ -349,14 +302,14 @@ "location": "query" }, "uploadType": { - "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "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": { "enumDescriptions": [ @@ -372,11 +325,17 @@ "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", "Media download with context-dependent Content-Type", @@ -384,150 +343,363 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" + "default": "json" }, "access_token": { - "type": "string", "location": "query", - "description": "OAuth access token." + "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.", + "default": "true", + "type": "boolean" } }, "schemas": { - "PipelineParameter": { + "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": { - "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://`.", + "errorCode": { + "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" + ], "type": "string" }, - "name": { - "type": "string", - "description": "Required. Name of the parameter - the pipeline runner uses this string\nas the key to the input and output maps in RunPipeline." + "timestampEvents": { + "items": { + "$ref": "TimestampEvent" + }, + "type": "array" }, - "description": { - "description": "Human-readable description.", + "operationId": { "type": "string" }, - "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.", - "$ref": "LocalCopy" - } - }, - "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" - }, - "LoggingOptions": { - "description": "The logging options for the pipeline run.", - "type": "object", - "properties": { - "gcsPath": { - "description": "The location in Google Cloud Storage to which the pipeline logs\nwill be copied. Can be specified as a fully qualified directory\npath, in which case logs will be output with a unique identifier\nas the filename in that directory, or as a fully specified path,\nwhich must end in `.log`, in which case that path will be\nused, and the user must ensure that logs are not\noverwritten. Stdout and stderr logs from the run are also\ngenerated and output as `-stdout.log` and `-stderr.log`.", - "type": "string" - } - }, - "id": "LoggingOptions" - }, - "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": { - "pipelineId": { - "description": "The already created pipeline to run.", + "validationToken": { + "format": "uint64", "type": "string" }, - "ephemeralPipeline": { - "$ref": "Pipeline", - "description": "A new pipeline object to run once and then delete." - }, - "pipelineArgs": { - "$ref": "RunPipelineArgs", - "description": "The arguments to use when running this pipeline." + "errorMessage": { + "type": "string" } }, - "id": "RunPipelineRequest" + "id": "SetOperationStatusRequest" }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "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" + "diskNames": { + "description": "The names of the disks that were created for this pipeline.", + "items": { + "type": "string" }, - "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For pipelines and exports, an empty response is returned.", - "type": "object" + "type": "array" }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", + "machineType": { + "description": "The machine type of the instance.", "type": "string" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "instanceName": { + "description": "The instance on which the operation is running.", + "type": "string" }, - "metadata": { - "description": "An OperationMetadata 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" - } + "zone": { + "description": "The availability zone in which the instance resides.", + "type": "string" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" + "id": "ComputeEngine" }, - "RuntimeMetadata": { - "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "ImportVariantsResponse": { + "description": "The variant data import response.", "type": "object", "properties": { - "computeEngine": { - "$ref": "ComputeEngine", - "description": "Execution information specific to Google Compute Engine." + "callSetIds": { + "description": "IDs of the call sets created during the import.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "RuntimeMetadata" + "id": "ImportVariantsResponse" }, - "ImportReadGroupSetsResponse": { - "description": "The read group set import response.", + "TimestampEvent": { + "description": "Stores the list of events and times they occured for major events in job\nexecution.", + "type": "object", + "properties": { + "timestamp": { + "format": "google-datetime", + "description": "The time this event occured.", + "type": "string" + }, + "description": { + "description": "String indicating the type of event", + "type": "string" + } + }, + "id": "TimestampEvent" + }, + "LocalCopy": { + "description": "LocalCopy defines how a remote file should be copied to and from the VM.", + "type": "object", + "properties": { + "disk": { + "description": "Required. The name of the disk where this parameter is\nlocated. Can be the name of one of the disks specified in the\nResources field, or \"boot\", which represents the Docker\ninstance's boot disk and has a mount point of `/`.", + "type": "string" + }, + "path": { + "description": "Required. The path within the user's docker container where\nthis input should be localized to and from, relative to the specified\ndisk's mount point. For example: file.txt,", + "type": "string" + } + }, + "id": "LocalCopy" + }, + "DockerExecutor": { + "description": "The Docker execuctor specification.", + "type": "object", + "properties": { + "imageName": { + "description": "Required. Image name from either Docker Hub or Google Container Registry.\nUsers that run pipelines must have READ access to the image.", + "type": "string" + }, + "cmd": { + "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" + }, + "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": { + "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." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "PERSISTENT_HDD", + "PERSISTENT_SSD", + "LOCAL_SSD" + ] + }, + "autoDelete": { + "description": "Deprecated. Disks created by the Pipelines API will be deleted at the end\nof the pipeline run, regardless of what this field is set to.", + "type": "boolean" + }, + "sizeGb": { + "format": "int32", + "description": "The size of the disk. Defaults to 500 (GB).\nThis field is not applicable for local SSD.", + "type": "integer" + }, + "mountPoint": { + "description": "Required at create time and cannot be overridden at run time.\nSpecifies the path in the docker container where files on\nthis disk should be located. For example, if `mountPoint`\nis `/mnt/disk`, and the parameter has `localPath`\n`inputs/file.txt`, the docker container can access the data at\n`/mnt/disk/inputs/file.txt`.", + "type": "string" + } + }, + "id": "Disk" + }, + "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" + }, + "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": { + "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.", + "$ref": "LocalCopy" + }, + "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" + } + }, + "id": "PipelineParameter" + }, + "LoggingOptions": { + "description": "The logging options for the pipeline run.", + "type": "object", + "properties": { + "gcsPath": { + "description": "The location in Google Cloud Storage to which the pipeline logs\nwill be copied. Can be specified as a fully qualified directory\npath, in which case logs will be output with a unique identifier\nas the filename in that directory, or as a fully specified path,\nwhich must end in `.log`, in which case that path will be\nused, and the user must ensure that logs are not\noverwritten. Stdout and stderr logs from the run are also\ngenerated and output as `-stdout.log` and `-stderr.log`.", + "type": "string" + } + }, + "id": "LoggingOptions" + }, + "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": { + "pipelineId": { + "description": "The already created pipeline to run.", + "type": "string" + }, + "ephemeralPipeline": { + "$ref": "Pipeline", + "description": "A new pipeline object to run once and then delete." + }, + "pipelineArgs": { + "description": "The arguments to use when running this pipeline.", + "$ref": "RunPipelineArgs" + } + }, + "id": "RunPipelineRequest" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" + }, + "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" + }, + "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": "An OperationMetadata object. This will always be returned with the Operation.", + "type": "object" + }, + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "response": { + "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" + }, + "ImportReadGroupSetsResponse": { + "description": "The read group set import response.", "type": "object", "properties": { "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", "items": { "type": "string" }, - "type": "array", - "description": "IDs of the read group sets that were created." + "type": "array" } }, "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": { + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" @@ -535,23 +707,18 @@ "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "type": "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" }, "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" } - } + }, + "id": "Status" }, "ServiceAccount": { - "id": "ServiceAccount", "description": "A Google Cloud Service Account.", "type": "object", "properties": { @@ -566,64 +733,13 @@ "description": "Email address of the service account. Defaults to `default`,\nwhich uses the compute service account associated with the project.", "type": "string" } - } - }, - "Pipeline": { - "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": { - "items": { - "$ref": "PipelineParameter" - }, - "type": "array", - "description": "Output parameters of the pipeline." - }, - "description": { - "type": "string", - "description": "User-specified description." - }, - "docker": { - "$ref": "DockerExecutor", - "description": "Specifies the docker run information." - }, - "inputParameters": { - "description": "Input parameters of the pipeline.", - "items": { - "$ref": "PipelineParameter" - }, - "type": "array" - }, - "resources": { - "$ref": "PipelineResources", - "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" - } }, - "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" + "id": "ServiceAccount" }, "PipelineResources": { + "description": "The system resources for the pipeline run.", + "type": "object", "properties": { - "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" - }, - "minimumRamGb": { - "type": "number", - "format": "double", - "description": "The minimum amount of RAM to use. Defaults to 3.75 (GB)" - }, "zones": { "description": "List of Google Compute Engine availability zones to which resource\ncreation will restricted. If empty, any zone may be chosen.", "items": { @@ -651,48 +767,73 @@ "format": "int32", "description": "The size of the boot disk. Defaults to 10 (GB).", "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" + }, + "minimumRamGb": { + "format": "double", + "description": "The minimum amount of RAM to use. Defaults to 3.75 (GB)", + "type": "number" } }, - "id": "PipelineResources", - "description": "The system resources for the pipeline run.", - "type": "object" + "id": "PipelineResources" }, - "OperationEvent": { - "description": "An event that occurred during an Operation.", + "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": { - "endTime": { - "format": "google-datetime", - "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.", + "description": { + "description": "User-specified description.", "type": "string" }, - "startTime": { - "format": "google-datetime", - "description": "Optional time of when event started.", + "docker": { + "description": "Specifies the docker run information.", + "$ref": "DockerExecutor" + }, + "inputParameters": { + "description": "Input parameters of the pipeline.", + "items": { + "$ref": "PipelineParameter" + }, + "type": "array" + }, + "resources": { + "description": "Required. Specifies resource requirements for the pipeline run.\nRequired fields:\n\n*\nminimumCpuCores\n\n*\nminimumRamGb", + "$ref": "PipelineResources" + }, + "name": { + "description": "Required. A user specified pipeline name that does not have to be unique.\nThis name can be used for filtering Pipelines in ListPipelines.", "type": "string" }, - "description": { - "description": "Required description of event.", + "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.", + "items": { + "$ref": "PipelineParameter" + }, + "type": "array" } }, - "id": "OperationEvent" + "id": "Pipeline" }, "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": { - "machineType": { - "type": "string" - }, - "cmd": { - "type": "string" - }, "vars": { + "type": "object", "additionalProperties": { "type": "string" - }, - "type": "object" + } }, "image": { "type": "string" @@ -707,76 +848,84 @@ "type": "object" }, "gcsSinks": { - "type": "object", "additionalProperties": { "$ref": "RepeatedString" - } + }, + "type": "object" }, "disks": { - "type": "object", "additionalProperties": { "type": "string" - } + }, + "type": "object" + }, + "machineType": { + "type": "string" + }, + "cmd": { + "type": "string" } }, "id": "ControllerConfig" }, - "RepeatedString": { + "OperationEvent": { + "description": "An event that occurred during an Operation.", "type": "object", "properties": { - "values": { - "items": { - "type": "string" - }, - "type": "array" + "description": { + "description": "Required description of event.", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Optional time of when event started.", + "type": "string" } }, - "id": "RepeatedString" + "id": "OperationEvent" }, "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.", "items": { "$ref": "Operation" }, "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, "id": "ListOperationsResponse" }, - "OperationMetadata": { + "RepeatedString": { "type": "object", "properties": { - "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": { + "values": { + "items": { "type": "string" }, - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", - "type": "object" - }, - "createTime": { - "format": "google-datetime", - "description": "The time at which the job was submitted to the Genomics service.", - "type": "string" - }, + "type": "array" + } + }, + "id": "RepeatedString" + }, + "OperationMetadata": { + "description": "Metadata describing an Operation.", + "type": "object", + "properties": { "projectId": { - "type": "string", - "description": "The Google Cloud Project in which the job is scoped." + "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.", @@ -800,30 +949,50 @@ "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": "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": "Runtime metadata on this Operation.", "type": "object" + }, + "labels": { + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "createTime": { + "format": "google-datetime", + "description": "The time at which the job was submitted to the Genomics service.", + "type": "string" } }, - "id": "OperationMetadata", - "description": "Metadata describing an Operation." + "id": "OperationMetadata" }, "RunPipelineArgs": { + "description": "The pipeline run arguments.", "type": "object", "properties": { - "logging": { - "$ref": "LoggingOptions", - "description": "Required. Logging options. Used by the service to communicate results\nto the user." - }, "labels": { + "description": "Labels to apply to this pipeline run. Labels will also be applied to\ncompute resources (VM, disks) created by this pipeline run. When listing\noperations, operations can filtered by labels.\nLabel keys may not be empty; label values may be empty. Non-empty labels\nmust be 1-63 characters long, and comply with [RFC1035]\n(https://www.ietf.org/rfc/rfc1035.txt).\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", + "type": "object", "additionalProperties": { "type": "string" - }, - "description": "Labels to apply to this pipeline run. Labels will also be applied to\ncompute resources (VM, disks) created by this pipeline run. When listing\noperations, operations can filtered by labels.\nLabel keys may not be empty; label values may be empty. Non-empty labels\nmust be 1-63 characters long, and comply with [RFC1035]\n(https://www.ietf.org/rfc/rfc1035.txt).\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must be\na dash, lowercase letter, or digit, except the last character, which cannot\nbe a dash.", - "type": "object" + } + }, + "logging": { + "$ref": "LoggingOptions", + "description": "Required. Logging options. Used by the service to communicate results\nto the user." }, "outputs": { "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.", @@ -833,8 +1002,8 @@ } }, "resources": { - "$ref": "PipelineResources", - "description": "Specifies resource requirements/overrides for the pipeline run." + "description": "Specifies resource requirements/overrides for the pipeline run.", + "$ref": "PipelineResources" }, "keepVmAliveOnFailureDuration": { "format": "google-duration", @@ -861,8 +1030,7 @@ "type": "object" } }, - "id": "RunPipelineArgs", - "description": "The pipeline run arguments." + "id": "RunPipelineArgs" }, "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.", @@ -873,218 +1041,50 @@ "type": "string" }, "pipelines": { + "description": "The matched pipelines.", "items": { "$ref": "Pipeline" }, - "type": "array", - "description": "The matched pipelines." - } - }, - "id": "ListPipelinesResponse" - }, - "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": { - "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", - "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" - ] - }, - "timestampEvents": { - "items": { - "$ref": "TimestampEvent" - }, - "type": "array" - }, - "operationId": { - "type": "string" - }, - "validationToken": { - "format": "uint64", - "type": "string" - }, - "errorMessage": { - "type": "string" - } - }, - "id": "SetOperationStatusRequest" - }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", - "type": "object", - "properties": { - "instanceName": { - "type": "string", - "description": "The instance on which the operation is running." - }, - "zone": { - "description": "The availability zone in which the instance resides.", - "type": "string" - }, - "diskNames": { - "description": "The names of the disks that were created for this pipeline.", - "items": { - "type": "string" - }, "type": "array" - }, - "machineType": { - "description": "The machine type of the instance.", - "type": "string" - } - }, - "id": "ComputeEngine" - }, - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", - "properties": { - "callSetIds": { - "items": { - "type": "string" - }, - "type": "array", - "description": "IDs of the call sets created during the import." } }, - "id": "ImportVariantsResponse" - }, - "TimestampEvent": { - "description": "Stores the list of events and times they occured for major events in job\nexecution.", - "type": "object", - "properties": { - "timestamp": { - "format": "google-datetime", - "description": "The time this event occured.", - "type": "string" + "id": "ListPipelinesResponse" + } + }, + "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": "v1alpha2", + "baseUrl": "https://genomics.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/genomics": { + "description": "View and manage Genomics data" }, - "description": { - "description": "String indicating the type of event", - "type": "string" - } - }, - "id": "TimestampEvent" - }, - "LocalCopy": { - "id": "LocalCopy", - "description": "LocalCopy defines how a remote file should be copied to and from the VM.", - "type": "object", - "properties": { - "path": { - "description": "Required. The path within the user's docker container where\nthis input should be localized to and from, relative to the specified\ndisk's mount point. For example: file.txt,", - "type": "string" + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" }, - "disk": { - "description": "Required. The name of the disk where this parameter is\nlocated. Can be the name of one of the disks specified in the\nResources field, or \"boot\", which represents the Docker\ninstance's boot disk and has a mount point of `/`.", - "type": "string" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } - }, - "DockerExecutor": { - "description": "The Docker execuctor specification.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "id": "DockerExecutor" - }, - "Disk": { - "description": "A Google Compute Engine disk resource specification.", - "type": "object", - "properties": { - "name": { - "description": "Required. The name of the disk that can be used in the pipeline\nparameters. Must be 1 - 63 characters.\nThe name \"boot\" is reserved for system use.", - "type": "string" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "PERSISTENT_HDD", - "PERSISTENT_SSD", - "LOCAL_SSD" - ], - "description": "Required. The type of the disk to create.", - "type": "string", - "enumDescriptions": [ - "Default disk type. Use one of the other options below.", - "Specifies a Google Compute Engine persistent hard disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", - "Specifies a Google Compute Engine persistent solid-state disk. See\nhttps://cloud.google.com/compute/docs/disks/#pdspecs for details.", - "Specifies a Google Compute Engine local SSD.\nSee https://cloud.google.com/compute/docs/disks/local-ssd for details." - ] - }, - "autoDelete": { - "description": "Deprecated. Disks created by the Pipelines API will be deleted at the end\nof the pipeline run, regardless of what this field is set to.", - "type": "boolean" - }, - "sizeGb": { - "format": "int32", - "description": "The size of the disk. Defaults to 500 (GB).\nThis field is not applicable for local SSD.", - "type": "integer" - }, - "mountPoint": { - "description": "Required at create time and cannot be overridden at run time.\nSpecifies the path in the docker container where files on\nthis disk should be located. For example, if `mountPoint`\nis `/mnt/disk`, and the parameter has `localPath`\n`inputs/file.txt`, the docker container can access the data at\n`/mnt/disk/inputs/file.txt`.", - "type": "string" - }, - "readOnly": { - "description": "Specifies how a sourced-base persistent disk will be mounted. See\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#use_multi_instances\nfor more details.\nCan only be set at create time.", - "type": "boolean" - }, - "source": { - "description": "The full or partial URL of the persistent disk to attach. See\nhttps://cloud.google.com/compute/docs/reference/latest/instances#resource\nand\nhttps://cloud.google.com/compute/docs/disks/persistent-disks#snapshots\nfor more details.", - "type": "string" - } - }, - "id": "Disk" - }, - "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" } - } + }, + "servicePath": "", + "description": "Upload, process, query, and search Genomics data in the cloud.", + "kind": "discovery#restDescription", + "rootUrl": "https://genomics.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "genomics", + "batchPath": "batch", + "id": "genomics:v1alpha2", + "documentationLink": "https://cloud.google.com/genomics", + "revision": "20170718", + "title": "Genomics API", + "ownerName": "Google", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/iam_v1.json b/DiscoveryJson/iam_v1.json index 4eaf8b1d63..4c1c2546f0 100644 --- a/DiscoveryJson/iam_v1.json +++ b/DiscoveryJson/iam_v1.json @@ -1,465 +1,4 @@ { - "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": "20170707", - "documentationLink": "https://cloud.google.com/iam/", - "id": "iam:v1", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "SignJwtResponse": { - "description": "The service account sign JWT response.", - "type": "object", - "properties": { - "signedJwt": { - "description": "The signed JWT.", - "type": "string" - }, - "keyId": { - "description": "The id of the key used to sign the JWT.", - "type": "string" - } - }, - "id": "SignJwtResponse" - }, - "SignBlobResponse": { - "id": "SignBlobResponse", - "description": "The service account sign blob response.", - "type": "object", - "properties": { - "keyId": { - "description": "The id of the key used to sign the blob.", - "type": "string" - }, - "signature": { - "format": "byte", - "description": "The signed blob.", - "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).", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsRequest" - }, - "SignJwtRequest": { - "id": "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" - } - } - }, - "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" - }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - }, - "type": "array" - } - } - }, - "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" - } - }, - "id": "AuditData" - }, - "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": { - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - }, - "action": { - "description": "The action that was performed on a Binding.\nRequired", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." - ], - "enum": [ - "ACTION_UNSPECIFIED", - "ADD", - "REMOVE" - ] - }, - "member": { - "description": "A single identity requesting access for a Cloud Platform resource.\nFollows the same format of Binding.members.\nRequired", - "type": "string" - } - }, - "id": "BindingDelta" - }, - "PolicyDelta": { - "description": "The difference delta between two policies.", - "type": "object", - "properties": { - "bindingDeltas": { - "description": "The delta for Bindings between two policies.", - "items": { - "$ref": "BindingDelta" - }, - "type": "array" - } - }, - "id": "PolicyDelta" - }, - "CreateServiceAccountRequest": { - "description": "The service account create request.", - "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": { - "description": "The ServiceAccount resource to create.\nCurrently, only the following values are user assignable:\n`display_name` .", - "$ref": "ServiceAccount" - } - }, - "id": "CreateServiceAccountRequest" - }, - "ListServiceAccountsResponse": { - "id": "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.", - "items": { - "$ref": "ServiceAccount" - }, - "type": "array" - } - } - }, - "QueryGrantableRolesResponse": { - "description": "The grantable role query response.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", - "type": "string" - }, - "roles": { - "description": "The list of matching roles.", - "items": { - "$ref": "Role" - }, - "type": "array" - } - }, - "id": "QueryGrantableRolesResponse" - }, - "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" - }, - "name": { - "description": "The name of the role.\n\nWhen Role is used in CreateRole, the role name must not be set.\n\nWhen Role is used in output and other input such as UpdateRole, the role\nname is the complete path, e.g., roles/logging.viewer for curated roles\nand organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles.", - "type": "string" - }, - "description": { - "description": "Optional. A human-readable description for the role.", - "type": "string" - } - } - }, - "SignBlobRequest": { - "id": "SignBlobRequest", - "description": "The service account sign blob request.", - "type": "object", - "properties": { - "bytesToSign": { - "format": "byte", - "description": "The bytes to sign.", - "type": "string" - } - } - }, - "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" - }, - "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", - "items": { - "type": "string" - }, - "type": "array" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "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": { - "format": "int32", - "description": "Optional limit on the number of roles to include in the response.", - "type": "integer" - } - }, - "id": "QueryGrantableRolesRequest" - }, - "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": {} - }, - "ServiceAccount": { - "id": "ServiceAccount", - "description": "A service account in the Identity and Access Management API.\n\nTo create a service account, specify the `project_id` and the `account_id`\nfor the account. The `account_id` is unique within the project, and is used\nto generate the service account email address and a stable\n`unique_id`.\n\nIf the account already exists, the account's resource name is returned\nin util::Status's ResourceInfo.resource_name in the format of\nprojects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}. The caller can\nuse 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/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": { - "email": { - "description": "@OutputOnly The email address of the service account.", - "type": "string" - }, - "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\n\nRequests using `-` as a wildcard for the project will infer the project\nfrom the `account` and the `account` value can be the `email` address or\nthe `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.", - "type": "string" - }, - "projectId": { - "description": "@OutputOnly The id of the project that owns the service account.", - "type": "string" - }, - "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": { - "format": "byte", - "description": "Used to perform a consistent read-modify-write.", - "type": "string" - } - } - }, - "ListServiceAccountKeysResponse": { - "description": "The service account keys list response.", - "type": "object", - "properties": { - "keys": { - "description": "The public keys for the service account.", - "items": { - "$ref": "ServiceAccountKey" - }, - "type": "array" - } - }, - "id": "ListServiceAccountKeysResponse" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsResponse" - }, - "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/{SERVICE_ACCOUNT_EMAIL}/keys/{key}`.", - "type": "string" - }, - "validBeforeTime": { - "format": "google-datetime", - "description": "The key can be used before this timestamp.", - "type": "string" - }, - "keyAlgorithm": { - "description": "Specifies the algorithm (and possibly key size) for the key.", - "type": "string", - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" - ] - }, - "privateKeyType": { - "enumDescriptions": [ - "Unspecified. Equivalent to `TYPE_GOOGLE_CREDENTIALS_FILE`.", - "PKCS12 format.\nThe password for the PKCS12 file is `notasecret`.\nFor more information, see https://tools.ietf.org/html/rfc7292.", - "Google Credentials File format." - ], - "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" - }, - "validAfterTime": { - "format": "google-datetime", - "description": "The key can be used after this timestamp.", - "type": "string" - }, - "privateKeyData": { - "format": "byte", - "description": "The private key data. Only provided in `CreateServiceAccountKey`\nresponses. Make sure to keep the private key data secure because it\nallows for the assertion of the service account identity.\nWhen decoded, the private key data can be used to authenticate with\nGoogle API client libraries and with\n\u003ca href=\"/sdk/gcloud/reference/auth/activate-service-account\"\u003egcloud\nauth activate-service-account\u003c/a\u003e.", - "type": "string" - }, - "publicKeyData": { - "format": "byte", - "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", - "type": "string" - } - }, - "id": "ServiceAccountKey" - }, - "CreateServiceAccountKeyRequest": { - "id": "CreateServiceAccountKeyRequest", - "description": "The service account key create request.", - "type": "object", - "properties": { - "includePublicKeyData": { - "type": "boolean" - }, - "keyAlgorithm": { - "description": "Which type of key and algorithm to use for the key.\nThe default is currently a 2K RSA key. However this may change in the\nfuture.", - "type": "string", - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" - ] - }, - "privateKeyType": { - "description": "The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the\ndefault output format.", - "type": "string", - "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" - ] - } - } - } - }, - "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": "iam", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://iam.googleapis.com/", "ownerDomain": "google.com", "name": "iam", "batchPath": "batch", @@ -469,46 +8,219 @@ "resources": { "projects": { "resources": { - "serviceAccounts": { + "roles": { "methods": { - "testIamPermissions": { + "get": { + "id": "iam.projects.roles.get", + "path": "v1/{+name}", + "description": "Gets a Role definition.", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "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}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/roles/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}" + }, + "patch": { + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "name": { + "type": "string", + "required": true, + "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}`" + }, + "updateMask": { + "location": "query", + "format": "google-fieldmask", + "description": "A mask describing which fields in the Role have changed.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "id": "iam.projects.roles.patch", + "path": "v1/{+name}", + "description": "Updates a Role definition.", "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "Role" + } + }, + "undelete": { + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}:undelete", + "id": "iam.projects.roles.undelete", + "path": "v1/{+name}:undelete", + "request": { + "$ref": "UndeleteRoleRequest" + }, + "description": "Undelete a Role, bringing it back in its previous state.", + "response": { + "$ref": "Role" }, - "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount.", - "httpMethod": "POST", "parameterOrder": [ - "resource" + "name" + ], + "httpMethod": "POST", + "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}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/roles/[^/]+$", + "location": "path" + } + } + }, + "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": "TestIamPermissionsResponse" + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "etag": { + "location": "query", + "format": "byte", + "description": "Used to perform a consistent read-modify-write.", + "type": "string" + }, + "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}`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/roles/[^/]+$" + } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "id": "iam.projects.roles.delete", + "path": "v1/{+name}" + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListRolesResponse" + }, "parameters": { - "resource": { - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "showDeleted": { + "description": "Include Roles that have been deleted.", + "type": "boolean", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "Optional limit on the number of roles to include in the response.", + "type": "integer", + "location": "query" + }, + "view": { + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Optional view for the returned Role objects.", + "type": "string" + }, + "parent": { + "pattern": "^projects/[^/]+$", "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 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", "required": true } }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "iam.projects.serviceAccounts.testIamPermissions" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles", + "path": "v1/{+parent}/roles", + "id": "iam.projects.roles.list", + "description": "Lists the Roles defined on a resource." }, - "delete": { - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.delete", - "description": "Deletes a ServiceAccount.", - "httpMethod": "DELETE", + "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": { + "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}`", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/roles", + "id": "iam.projects.roles.create", + "path": "v1/{+parent}/roles" + } + } + }, + "serviceAccounts": { + "methods": { + "signBlob": { + "request": { + "$ref": "SignBlobRequest" + }, + "description": "Signs a blob using a service account's system-managed private key.", + "httpMethod": "POST", "parameterOrder": [ "name" ], "response": { - "$ref": "Empty" + "$ref": "SignBlobResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -522,22 +234,26 @@ "required": true } }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}" + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlob", + "path": "v1/{+name}:signBlob", + "id": "iam.projects.serviceAccounts.signBlob" }, "list": { + "id": "iam.projects.serviceAccounts.list", + "path": "v1/{+name}/serviceAccounts", "description": "Lists ServiceAccounts for a project.", - "httpMethod": "GET", "response": { "$ref": "ListServiceAccountsResponse" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", "parameters": { "pageToken": { + "location": "query", "description": "Optional pagination token returned in an earlier\nListServiceAccountsResponse.next_page_token.", - "type": "string", - "location": "query" + "type": "string" }, "name": { "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", @@ -556,50 +272,9 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts", - "path": "v1/{+name}/serviceAccounts", - "id": "iam.projects.serviceAccounts.list" - }, - "signBlob": { - "response": { - "$ref": "SignBlobResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlob", - "id": "iam.projects.serviceAccounts.signBlob", - "path": "v1/{+name}:signBlob", - "request": { - "$ref": "SignBlobRequest" - }, - "description": "Signs a blob using a service account's system-managed private key." + "flatPath": "v1/projects/{projectsId}/serviceAccounts" }, "setIamPolicy": { - "description": "Sets the IAM access control policy for a\nServiceAccount.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "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.", @@ -613,40 +288,49 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", "id": "iam.projects.serviceAccounts.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" + "description": "Sets the IAM access control policy for a\nServiceAccount.", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Policy" + } }, "signJwt": { + "description": "Signs a JWT using a service account's system-managed private key.\n\nIf no expiry time (`exp`) is provided in the `SignJwtRequest`, IAM sets an\nan expiry time of one hour by default. If you request an expiry time of\nmore than one hour, the request will fail.", + "request": { + "$ref": "SignJwtRequest" + }, + "response": { + "$ref": "SignJwtResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", "parameters": { "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": "string", "required": true, "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" + "location": "path", + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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}: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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "SignJwtResponse" - } + "path": "v1/{+name}:signJwt" }, "create": { - "path": "v1/{+name}/serviceAccounts", - "id": "iam.projects.serviceAccounts.create", "description": "Creates a ServiceAccount\nand returns it.", "request": { "$ref": "CreateServiceAccountRequest" @@ -670,12 +354,11 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts" + "flatPath": "v1/projects/{projectsId}/serviceAccounts", + "path": "v1/{+name}/serviceAccounts", + "id": "iam.projects.serviceAccounts.create" }, "getIamPolicy": { - "path": "v1/{+resource}:getIamPolicy", - "id": "iam.projects.serviceAccounts.getIamPolicy", - "description": "Returns the IAM access control policy for a\nServiceAccount.", "httpMethod": "POST", "response": { "$ref": "Policy" @@ -683,10 +366,36 @@ "parameterOrder": [ "resource" ], + "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.", "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "iam.projects.serviceAccounts.getIamPolicy", + "description": "Returns the IAM access control policy for a\nServiceAccount." + }, + "get": { + "description": "Gets a ServiceAccount.", + "httpMethod": "GET", + "response": { + "$ref": "ServiceAccount" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": "string", "required": true, "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", "location": "path" @@ -695,94 +404,97 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy" + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "path": "v1/{+name}", + "id": "iam.projects.serviceAccounts.get" }, - "get": { + "update": { + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "id": "iam.projects.serviceAccounts.update", + "path": "v1/{+name}", + "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/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project will infer the project from\nthe account. The `account` value can be the `email` address or the\n`unique_id` of the service account.", + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\n\nRequests using `-` as a wildcard for the project will infer the project\nfrom the `account` and the `account` value can be the `email` address or\nthe `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$" + } + } + }, + "testIamPermissions": { + "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.get", - "description": "Gets a ServiceAccount.", - "httpMethod": "GET", - "response": { - "$ref": "ServiceAccount" - }, - "parameterOrder": [ - "name" - ] + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", + "id": "iam.projects.serviceAccounts.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions" }, - "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" - }, + "delete": { + "httpMethod": "DELETE", "parameterOrder": [ "name" ], - "httpMethod": "PUT", + "response": { + "$ref": "Empty" + }, "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/{SERVICE_ACCOUNT_EMAIL}`.\n\nRequests using `-` as a wildcard for the project will infer the project\nfrom the `account` and the `account` value can be the `email` address or\nthe `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.", "type": "string", "required": true, "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" + "location": "path", + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project will infer the project from\nthe account. The `account` value can be the `email` address or the\n`unique_id` of the service account." } }, "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "id": "iam.projects.serviceAccounts.update", - "path": "v1/{+name}" + "path": "v1/{+name}", + "id": "iam.projects.serviceAccounts.delete", + "description": "Deletes a ServiceAccount." } }, "resources": { "keys": { "methods": { - "create": { - "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/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": "string", - "required": true - } - }, - "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.", - "response": { - "$ref": "ServiceAccountKey" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - }, "delete": { + "description": "Deletes a ServiceAccountKey.", "httpMethod": "DELETE", "response": { "$ref": "Empty" @@ -790,6 +502,9 @@ "parameterOrder": [ "name" ], + "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/{SERVICE_ACCOUNT_EMAIL}/keys/{key}`.\nUsing `-` as a wildcard for the project will infer the project from\nthe account. The `account` value can be the `email` address or the\n`unique_id` of the service account.", @@ -799,32 +514,28 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.keys.delete", - "description": "Deletes a ServiceAccountKey." + "id": "iam.projects.serviceAccounts.keys.delete" }, "get": { "parameters": { "publicKeyType": { - "description": "The output format of the public key requested.\nX509_PEM is the default output format.", - "type": "string", - "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", + "location": "query" }, "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/{SERVICE_ACCOUNT_EMAIL}/keys/{key}`.\n\nUsing `-` as a wildcard for the project 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": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", + "location": "path" } }, "scopes": [ @@ -843,26 +554,26 @@ } }, "list": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", + "id": "iam.projects.serviceAccounts.keys.list", + "path": "v1/{+name}/keys", + "description": "Lists ServiceAccountKeys.", "response": { "$ref": "ListServiceAccountKeysResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "name" ], + "httpMethod": "GET", "parameters": { "name": { - "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\n\nUsing `-` as a wildcard for the project, 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": "string", "required": true, "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" + "location": "path", + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\n\nUsing `-` as a wildcard for the project, will infer the project from\nthe account. The `account` value can be the `email` address or the\n`unique_id` of the service account." }, "keyTypes": { - "repeated": true, "location": "query", "enum": [ "KEY_TYPE_UNSPECIFIED", @@ -870,129 +581,1098 @@ "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" + "type": "string", + "repeated": true } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "response": { + "$ref": "ServiceAccountKey" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "location": "path", + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": "string", + "required": true, + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", + "id": "iam.projects.serviceAccounts.keys.create", "path": "v1/{+name}/keys", - "id": "iam.projects.serviceAccounts.keys.list", - "description": "Lists ServiceAccountKeys." + "description": "Creates a ServiceAccountKey\nand returns it.", + "request": { + "$ref": "CreateServiceAccountKeyRequest" + } + } + } + } + } + } + } + }, + "permissions": { + "methods": { + "queryTestablePermissions": { + "flatPath": "v1/permissions:queryTestablePermissions", + "id": "iam.permissions.queryTestablePermissions", + "path": "v1/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": {} + } + } + }, + "roles": { + "methods": { + "queryGrantableRoles": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/roles:queryGrantableRoles", + "path": "v1/roles:queryGrantableRoles", + "id": "iam.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.", + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "QueryGrantableRolesResponse" + } + }, + "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}`", + "type": "string", + "required": true, + "pattern": "^roles/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/roles/{rolesId}", + "id": "iam.roles.get", + "path": "v1/{+name}", + "description": "Gets a Role definition.", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET" + }, + "list": { + "description": "Lists the Roles defined on a resource.", + "httpMethod": "GET", + "response": { + "$ref": "ListRolesResponse" + }, + "parameterOrder": [], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "showDeleted": { + "type": "boolean", + "location": "query", + "description": "Include Roles that have been deleted." + }, + "pageToken": { + "location": "query", + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Optional limit on the number of roles to include in the response.", + "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}`", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/roles", + "path": "v1/roles", + "id": "iam.roles.list" + } + } + }, + "organizations": { + "resources": { + "roles": { + "methods": { + "delete": { + "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}`", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "location": "path" + }, + "etag": { + "location": "query", + "format": "byte", + "description": "Used to perform a consistent read-modify-write.", + "type": "string" + } + }, + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "id": "iam.organizations.roles.delete", + "path": "v1/{+name}", + "description": "Soft deletes a role. The role is suspended and cannot be used to create new\nIAM Policy Bindings.\nThe Role will not be included in `ListRoles()` unless `show_deleted` is set\nin the `ListRolesRequest`. The Role contains the deleted boolean set.\nExisting Bindings remains, but are inactive. The Role can be undeleted\nwithin 7 days. After 7 days the Role is deleted and all Bindings associated\nwith the role are removed.", + "response": { + "$ref": "Role" + }, + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ] + }, + "list": { + "response": { + "$ref": "ListRolesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "view": { + "description": "Optional view for the returned Role objects.", + "type": "string", + "location": "query", + "enum": [ + "BASIC", + "FULL" + ] + }, + "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}`", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+$" + }, + "showDeleted": { + "description": "Include Roles that have been deleted.", + "type": "boolean", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Optional limit on the number of roles to include in the response." + } + }, + "flatPath": "v1/organizations/{organizationsId}/roles", + "id": "iam.organizations.roles.list", + "path": "v1/{+parent}/roles", + "description": "Lists the Roles defined on a resource." + }, + "create": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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}`", + "type": "string", + "required": true + } + }, + "flatPath": "v1/organizations/{organizationsId}/roles", + "path": "v1/{+parent}/roles", + "id": "iam.organizations.roles.create", + "request": { + "$ref": "CreateRoleRequest" + }, + "description": "Creates a new Role.", + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "Role" + } + }, + "undelete": { + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}:undelete", + "path": "v1/{+name}:undelete", + "id": "iam.organizations.roles.undelete", + "request": { + "$ref": "UndeleteRoleRequest" + }, + "description": "Undelete a Role, bringing it back in its previous state.", + "httpMethod": "POST", + "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}`", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "location": "path" } } + }, + "get": { + "description": "Gets a Role definition.", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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}`", + "type": "string", + "required": true, + "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": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Role" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "format": "google-fieldmask", + "description": "A mask describing which fields in the Role have changed.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^organizations/[^/]+/roles/[^/]+$", + "location": "path", + "description": "The resource name of the role in one of the following formats:\n`roles/{ROLE_NAME}`\n`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "type": "string", + "required": true + } + }, + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "path": "v1/{+name}", + "id": "iam.organizations.roles.patch", + "request": { + "$ref": "Role" + }, + "description": "Updates a Role definition." } } } } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ] + }, + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" + }, + "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json" + }, + "access_token": { + "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.", + "default": "true", + "type": "boolean", + "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": "v1", + "baseUrl": "https://iam.googleapis.com/", + "servicePath": "", + "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.", + "kind": "discovery#restDescription", + "basePath": "", + "revision": "20170714", + "documentationLink": "https://cloud.google.com/iam/", + "id": "iam:v1", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "SignBlobRequest": { + "description": "The service account sign blob request.", + "type": "object", + "properties": { + "bytesToSign": { + "format": "byte", + "description": "The bytes to sign.", + "type": "string" + } + }, + "id": "SignBlobRequest" + }, + "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" + }, + "QueryTestablePermissionsResponse": { + "description": "The response containing permissions which can be tested on a resource.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`QueryTestableRolesRequest.page_token` to this value.", + "type": "string" + }, + "permissions": { + "description": "The Permissions testable on the requested resource.", + "items": { + "$ref": "Permission" + }, + "type": "array" + } + }, + "id": "QueryTestablePermissionsResponse" + }, + "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 `{}`." + }, + "CreateServiceAccountKeyRequest": { + "id": "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": { + "description": "The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the\ndefault output format.", + "type": "string", + "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" + ] + }, + "includePublicKeyData": { + "type": "boolean" + } + } + }, + "SignJwtResponse": { + "description": "The service account sign JWT response.", + "type": "object", + "properties": { + "signedJwt": { + "description": "The signed JWT.", + "type": "string" + }, + "keyId": { + "description": "The id of the key used to sign the JWT.", + "type": "string" + } + }, + "id": "SignJwtResponse" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestIamPermissionsRequest" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", + "type": "object", + "properties": { + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "format": "byte", + "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.", + "type": "string" + } + }, + "id": "Policy" + }, + "ListRolesResponse": { + "id": "ListRolesResponse", + "description": "The response containing the roles defined under a resource.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`ListRolesRequest.page_token` to this value.", + "type": "string" + }, + "roles": { + "items": { + "$ref": "Role" + }, + "type": "array", + "description": "The Roles defined on this resource." + } + } }, - "roles": { - "methods": { - "queryGrantableRoles": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "QueryGrantableRolesResponse" + "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" + } + }, + "id": "AuditData" + }, + "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": { + "type": "string", + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired" + }, + "action": { + "enumDescriptions": [ + "Unspecified.", + "Addition of a Binding.", + "Removal of a Binding." + ], + "enum": [ + "ACTION_UNSPECIFIED", + "ADD", + "REMOVE" + ], + "description": "The action that was performed on a Binding.\nRequired", + "type": "string" + } + }, + "id": "BindingDelta" + }, + "UndeleteRoleRequest": { + "description": "The request to undelete an existing role.", + "type": "object", + "properties": { + "etag": { + "format": "byte", + "description": "Used to perform a consistent read-modify-write.", + "type": "string" + } + }, + "id": "UndeleteRoleRequest" + }, + "CreateServiceAccountRequest": { + "description": "The service account create request.", + "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" + }, + "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.", + "items": { + "type": "string" }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "type": "array" + }, + "description": { + "description": "Optional. A human-readable description for the role.", + "type": "string" + }, + "etag": { + "format": "byte", + "description": "Used to perform a consistent read-modify-write.", + "type": "string" + }, + "stage": { + "enum": [ + "ALPHA", + "BETA", + "GA", + "DEPRECATED", + "DISABLED", + "EAP" ], - "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 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.", + "The user has indicated this role is generally available.", + "The user has indicated this role is being deprecated.", + "This role is disabled and will not contribute permissions to any members\nit is granted to in policies.", + "The user has indicated this role is currently in an eap phase." + ] + }, + "name": { + "type": "string", + "description": "The name of the role.\n\nWhen Role is used in CreateRole, the role name must not be set.\n\nWhen Role is used in output and other input such as UpdateRole, the role\nname is the complete path, e.g., roles/logging.viewer for curated roles\nand organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles." + }, + "deleted": { + "description": "The current deleted state of the role. This field is read only.\nIt will be ignored in calls to CreateRole and UpdateRole.", + "type": "boolean" + } + }, + "id": "Role" + }, + "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", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "id": "Binding", + "description": "Associates `members` with a `role`." + }, + "ServiceAccount": { + "id": "ServiceAccount", + "description": "A service account in the Identity and Access Management API.\n\nTo create a service account, specify the `project_id` and the `account_id`\nfor the account. The `account_id` is unique within the project, and is used\nto generate the service account email address and a stable\n`unique_id`.\n\nIf the account already exists, the account's resource name is returned\nin util::Status's ResourceInfo.resource_name in the format of\nprojects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}. The caller can\nuse 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/{SERVICE_ACCOUNT_EMAIL}`.\nUsing `-` as a wildcard for the project 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": { + "name": { + "description": "The resource name of the service account in the following format:\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.\n\nRequests using `-` as a wildcard for the project will infer the project\nfrom the `account` and the `account` value can be the `email` address or\nthe `unique_id` of the service account.\n\nIn responses the resource name will always be in the format\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}`.", + "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": { + "type": "string", + "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." + }, + "uniqueId": { + "description": "@OutputOnly The unique and stable id of the service account.", + "type": "string" + }, + "displayName": { + "description": "Optional. A user-specified description of the service account. Must be\nfewer than 100 UTF-8 bytes.", + "type": "string" + }, + "etag": { + "format": "byte", + "description": "Used to perform a consistent read-modify-write.", + "type": "string" } } - } - }, - "parameters": { - "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" + "QueryGrantableRolesRequest": { + "id": "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": { + "format": "int32", + "description": "Optional limit on the number of roles to include in the response.", + "type": "integer" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "type": "string", + "enumDescriptions": [ + "Omits the `included_permissions` field.\nThis is the default value.", + "Returns all fields." + ] + } + } }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "CreateRoleRequest": { + "description": "The request to create a new role.", + "type": "object", + "properties": { + "roleId": { + "description": "The role id to use for this role.", + "type": "string" + }, + "role": { + "$ref": "Role", + "description": "The Role resource to create." + } + }, + "id": "CreateRoleRequest" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "location": "query" + "QueryTestablePermissionsRequest": { + "properties": { + "pageSize": { + "format": "int32", + "description": "Optional limit on the number of permissions to include in the response.", + "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": { + "type": "string", + "description": "Optional pagination token returned in an earlier\nQueryTestablePermissionsRequest." + } + }, + "id": "QueryTestablePermissionsRequest", + "description": "A request to get permissions which can be tested on a resource.", + "type": "object" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestIamPermissionsResponse" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "ListServiceAccountKeysResponse": { + "description": "The service account keys list response.", + "type": "object", + "properties": { + "keys": { + "description": "The public keys for the service account.", + "items": { + "$ref": "ServiceAccountKey" + }, + "type": "array" + } + }, + "id": "ListServiceAccountKeysResponse" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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": { + "format": "byte", + "description": "The private key data. Only provided in `CreateServiceAccountKey`\nresponses. Make sure to keep the private key data secure because it\nallows for the assertion of the service account identity.\nWhen decoded, the private key data can be used to authenticate with\nGoogle API client libraries and with\n\u003ca href=\"/sdk/gcloud/reference/auth/activate-service-account\"\u003egcloud\nauth activate-service-account\u003c/a\u003e.", + "type": "string" + }, + "publicKeyData": { + "format": "byte", + "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", + "type": "string" + }, + "name": { + "description": "The resource name of the service account key in the following format\n`projects/{PROJECT_ID}/serviceAccounts/{SERVICE_ACCOUNT_EMAIL}/keys/{key}`.", + "type": "string" + }, + "validBeforeTime": { + "format": "google-datetime", + "description": "The key can be used before this timestamp.", + "type": "string" + }, + "keyAlgorithm": { + "description": "Specifies the algorithm (and possibly key size) for the key.", + "type": "string", + "enumDescriptions": [ + "An unspecified key algorithm.", + "1k RSA Key.", + "2k RSA Key." + ], + "enum": [ + "KEY_ALG_UNSPECIFIED", + "KEY_ALG_RSA_1024", + "KEY_ALG_RSA_2048" + ] + }, + "privateKeyType": { + "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", + "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." + ] + }, + "validAfterTime": { + "format": "google-datetime", + "description": "The key can be used after this timestamp.", + "type": "string" + } + }, + "id": "ServiceAccountKey" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "SignBlobResponse": { + "properties": { + "signature": { + "format": "byte", + "description": "The signed blob.", + "type": "string" + }, + "keyId": { + "description": "The id of the key used to sign the blob.", + "type": "string" + } + }, + "id": "SignBlobResponse", + "description": "The service account sign blob response.", + "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" - ] + "Permission": { + "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": { + "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." + ], + "enum": [ + "SUPPORTED", + "TESTING", + "NOT_SUPPORTED" + ], + "description": "The current custom role support level." + }, + "stage": { + "enumDescriptions": [ + "The permission is currently in an alpha phase.", + "The permission is currently in a beta phase.", + "The permission is generally available.", + "The permission is being deprecated." + ], + "enum": [ + "ALPHA", + "BETA", + "GA", + "DEPRECATED" + ], + "description": "The current launch stage of the permission.", + "type": "string" + }, + "name": { + "description": "The name of this Permission.", + "type": "string" + } + }, + "id": "Permission", + "description": "A permission which can be included by a role.", + "type": "object" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "SignJwtRequest": { + "description": "The service account sign JWT request.", + "type": "object", + "properties": { + "payload": { + "description": "The JWT payload to sign, a JSON JWT Claim set.", + "type": "string" + } + }, + "id": "SignJwtRequest" }, - "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" + "PolicyDelta": { + "description": "The difference delta between two policies.", + "type": "object", + "properties": { + "bindingDeltas": { + "description": "The delta for Bindings between two policies.", + "items": { + "$ref": "BindingDelta" + }, + "type": "array" + } + }, + "id": "PolicyDelta" }, - "quotaUser": { - "description": "Available 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" + "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.", + "items": { + "$ref": "ServiceAccount" + }, + "type": "array" + } + }, + "id": "ListServiceAccountsResponse" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" + "QueryGrantableRolesResponse": { + "description": "The grantable role query response.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", + "type": "string" + }, + "roles": { + "description": "The list of matching roles.", + "items": { + "$ref": "Role" + }, + "type": "array" + } + }, + "id": "QueryGrantableRolesResponse" } - } + }, + "protocol": "rest", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "canonicalName": "iam", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://iam.googleapis.com/" } diff --git a/DiscoveryJson/kgsearch_v1.json b/DiscoveryJson/kgsearch_v1.json index 23051902bc..39a96aa0cc 100644 --- a/DiscoveryJson/kgsearch_v1.json +++ b/DiscoveryJson/kgsearch_v1.json @@ -6,34 +6,18 @@ "entities": { "methods": { "search": { - "response": { - "$ref": "SearchResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", "parameters": { - "types": { - "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.", + "languages": { + "description": "The list of language codes (defined in ISO 693) to run the query with,\ne.g. 'en'.", "type": "string", "repeated": true, "location": "query" }, - "indent": { - "location": "query", - "description": "Enables indenting of json results.", - "type": "boolean" - }, - "languages": { + "ids": { "repeated": true, "location": "query", - "description": "The list of language codes (defined in ISO 693) to run the query with,\ne.g. 'en'.", - "type": "string" - }, - "ids": { "description": "The list of entity id to be used for search instead of query string.\nTo specify multiple ids in the HTTP request, repeat the parameter in the\nURL as in ...?ids=A&ids=B", - "type": "string", - "repeated": true, - "location": "query" + "type": "string" }, "limit": { "type": "integer", @@ -42,54 +26,98 @@ "description": "Limits the number of entities to be returned." }, "prefix": { - "type": "boolean", "location": "query", - "description": "Enables prefix match against names and aliases of entities" + "description": "Enables prefix match against names and aliases of entities", + "type": "boolean" }, "query": { + "location": "query", + "description": "The literal query string for search.", + "type": "string" + }, + "types": { "type": "string", + "repeated": true, "location": "query", - "description": "The literal query string for search." + "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." + }, + "indent": { + "description": "Enables indenting of json results.", + "type": "boolean", + "location": "query" } }, "flatPath": "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" + "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", + "response": { + "$ref": "SearchResponse" + }, + "parameterOrder": [], + "httpMethod": "GET" } } } }, "parameters": { - "fields": { + "pp": { + "default": "true", + "type": "boolean", "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "description": "Pretty-print response." }, - "uploadType": { + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" + }, + "prettyPrint": { "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" + }, + "uploadType": { "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, - "callback": { - "location": "query", - "description": "JSONP", - "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" + }, + "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", @@ -102,61 +130,30 @@ "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": { - "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.", - "default": "true", - "type": "boolean" - }, - "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\").", + "key": { + "description": "API key. 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": { + "quotaUser": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" + "description": "Available 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" } }, "schemas": { "SearchResponse": { + "id": "SearchResponse", "description": "Response message includes the context and a list of matching results\nwhich contain the detail of associated entities.", "type": "object", "properties": { - "@type": { - "description": "The schema type of top-level JSON-LD object, e.g. ItemList.", - "type": "any" - }, "itemListElement": { "description": "The item list of search results.", "items": { @@ -167,9 +164,12 @@ "@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": { + "description": "The schema type of top-level JSON-LD object, e.g. ItemList.", + "type": "any" } - }, - "id": "SearchResponse" + } } }, "protocol": "rest", diff --git a/DiscoveryJson/language_v1.json b/DiscoveryJson/language_v1.json index 6f21c3b9da..228ca7ebd5 100644 --- a/DiscoveryJson/language_v1.json +++ b/DiscoveryJson/language_v1.json @@ -1,289 +1,532 @@ { - "batchPath": "batch", - "title": "Google Cloud Natural Language API", - "ownerName": "Google", - "resources": { - "documents": { - "methods": { - "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" - }, - "response": { - "$ref": "AnalyzeSyntaxResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/documents:analyzeSyntax", - "id": "language.documents.analyzeSyntax", - "path": "v1/documents:analyzeSyntax" - }, - "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-platform" - ], - "flatPath": "v1/documents:analyzeSentiment", - "path": "v1/documents:analyzeSentiment", - "id": "language.documents.analyzeSentiment" - }, - "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-platform" - ], - "parameters": {}, - "flatPath": "v1/documents:annotateText", - "id": "language.documents.annotateText", - "path": "v1/documents:annotateText" - }, - "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-platform" - ], - "flatPath": "v1/documents:analyzeEntities", - "path": "v1/documents:analyzeEntities", - "id": "language.documents.analyzeEntities" - } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "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": { - "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.", - "default": "true", - "type": "boolean" - }, - "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://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.", - "servicePath": "", - "basePath": "", "revision": "20170619", "documentationLink": "https://cloud.google.com/natural-language/", "id": "language:v1", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "AnnotateTextRequest": { - "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call.", + "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": { - "encodingType": { - "description": "The encoding type used by the API to calculate offsets.", + "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", + "IMPERATIVE", + "INDICATIVE", + "INTERROGATIVE", + "JUSSIVE", + "SUBJUNCTIVE" + ], + "description": "The grammatical mood.", + "type": "string" + }, + "tag": { + "description": "The part of speech tag.", "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", + "Adjective", + "Adposition (preposition and postposition)", + "Adverb", + "Conjunction", + "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" ], "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "UNKNOWN", + "ADJ", + "ADP", + "ADV", + "CONJ", + "DET", + "NOUN", + "NUM", + "PRON", + "PRT", + "PUNCT", + "VERB", + "X", + "AFFIX" ] }, - "document": { - "$ref": "Document", - "description": "Input document." - }, - "features": { - "$ref": "Features", - "description": "The enabled features." - } - }, - "id": "AnnotateTextRequest" - }, - "AnalyzeSentimentRequest": { - "description": "The sentiment analysis request message.", - "type": "object", - "properties": { - "encodingType": { + "gender": { "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "GENDER_UNKNOWN", + "FEMININE", + "MASCULINE", + "NEUTER" ], - "description": "The encoding type used by the API to calculate sentence offsets.", + "description": "The grammatical gender.", "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.", + "Gender is not applicable in the analyzed language or is not predicted.", + "Feminine", + "Masculine", + "Neuter" + ] + }, + "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" + }, + "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": { + "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" + }, + "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" + ], + "description": "The grammatical reciprocity.", + "type": "string" + }, + "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": { + "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": { + "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": [ + "Aspect is not applicable in the analyzed language or is not predicted.", + "Perfective", + "Imperfective", + "Progressive" + ], + "enum": [ + "ASPECT_UNKNOWN", + "PERFECTIVE", + "IMPERFECTIVE", + "PROGRESSIVE" + ] + } + }, + "id": "PartOfSpeech" + }, + "AnalyzeSyntaxRequest": { + "properties": { + "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" ] }, "document": { - "$ref": "Document", - "description": "Input document." + "description": "Input document.", + "$ref": "Document" } }, - "id": "AnalyzeSentimentRequest" + "id": "AnalyzeSyntaxRequest", + "description": "The syntax analysis request message.", + "type": "object" }, - "AnnotateTextResponse": { - "description": "The text annotations response message.", - "type": "object", + "AnalyzeSentimentResponse": { "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. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "description": "The sentiment for all the sentences in the document.", "items": { "$ref": "Sentence" }, "type": "array" }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "items": { - "$ref": "Token" - }, - "type": "array" - }, + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment of the input document." + } + }, + "id": "AnalyzeSentimentResponse", + "description": "The sentiment analysis response message.", + "type": "object" + }, + "AnalyzeEntitiesResponse": { + "description": "The entity analysis 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.", + "description": "The recognized entities in the input document.", "items": { "$ref": "Entity" }, "type": "array" }, - "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" } }, - "id": "AnnotateTextResponse" + "id": "AnalyzeEntitiesResponse" }, - "DependencyEdge": { - "description": "Represents dependency parse tree information for a token. (For more\ninformation on dependency labels, see\nhttp://www.aclweb.org/anthology/P13-2017", + "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": { - "label": { - "enum": [ - "UNKNOWN", - "ABBREV", - "ACOMP", - "ADVCL", + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "items": { + "$ref": "EntityMention" + }, + "type": "array" + }, + "name": { + "description": "The representative name for the entity.", + "type": "string" + }, + "salience": { + "format": "float", + "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.", + "type": "number" + }, + "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" + }, + "type": { + "enumDescriptions": [ + "Unknown", + "Person", + "Location", + "Organization", + "Event", + "Work of art", + "Consumer goods", + "Other types" + ], + "enum": [ + "UNKNOWN", + "PERSON", + "LOCATION", + "ORGANIZATION", + "EVENT", + "WORK_OF_ART", + "CONSUMER_GOOD", + "OTHER" + ], + "description": "The entity type.", + "type": "string" + } + }, + "id": "Entity" + }, + "AnalyzeSyntaxResponse": { + "description": "The syntax analysis response message.", + "type": "object", + "properties": { + "sentences": { + "description": "Sentences in the input document.", + "items": { + "$ref": "Sentence" + }, + "type": "array" + }, + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.", + "items": { + "$ref": "Token" + }, + "type": "array" + }, + "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" + }, + "AnnotateTextRequest": { + "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", + "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." + }, + "features": { + "description": "The enabled features.", + "$ref": "Features" + } + } + }, + "AnalyzeSentimentRequest": { + "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 sentence offsets.", + "type": "string" + }, + "document": { + "$ref": "Document", + "description": "Input document." + } + }, + "id": "AnalyzeSentimentRequest", + "description": "The sentiment analysis request message.", + "type": "object" + }, + "AnnotateTextResponse": { + "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. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "items": { + "$ref": "Sentence" + }, + "type": "array" + }, + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "items": { + "$ref": "Token" + }, + "type": "array" + }, + "entities": { + "items": { + "$ref": "Entity" + }, + "type": "array", + "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities." + }, + "documentSentiment": { + "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment.", + "$ref": "Sentiment" + } + }, + "id": "AnnotateTextResponse", + "description": "The text annotations response message." + }, + "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": { + "format": "int32", + "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.", + "type": "integer" + }, + "label": { + "enum": [ + "UNKNOWN", + "ABBREV", + "ACOMP", + "ADVCL", "ADVMOD", "AMOD", "APPOS", @@ -439,11 +682,6 @@ "Copula", "Dislocated relation (for fronted/topicalized elements)" ] - }, - "headTokenIndex": { - "type": "integer", - "format": "int32", - "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" @@ -462,611 +700,198 @@ "type": "string" } }, - "id": "TextSpan" - }, - "Token": { - "id": "Token", - "description": "Represents the smallest syntactic building block of the text.", - "type": "object", - "properties": { - "dependencyEdge": { - "description": "Dependency tree parse for this token.", - "$ref": "DependencyEdge" - }, - "text": { - "description": "The token text.", - "$ref": "TextSpan" - }, - "lemma": { - "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", - "type": "string" - }, - "partOfSpeech": { - "description": "Parts of speech tag for this token.", - "$ref": "PartOfSpeech" - } - } - }, - "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 will be a\ncommon set of message types for APIs to use.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" - } - }, - "id": "Status" - }, - "EntityMention": { - "properties": { - "type": { - "enumDescriptions": [ - "Unknown", - "Proper name", - "Common noun (or noun compound)" - ], - "enum": [ - "TYPE_UNKNOWN", - "PROPER", - "COMMON" - ], - "description": "The type of the entity mention.", - "type": "string" - }, - "text": { - "$ref": "TextSpan", - "description": "The mention text." - } - }, - "id": "EntityMention", - "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", - "type": "object" - }, - "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": { - "description": "Extract entities.", - "type": "boolean" - }, - "extractDocumentSentiment": { - "description": "Extract document-level sentiment.", - "type": "boolean" - }, - "extractSyntax": { - "description": "Extract syntax information.", - "type": "boolean" - } - }, - "id": "Features" - }, - "Sentence": { - "id": "Sentence", - "description": "Represents a sentence in the input document.", - "type": "object", - "properties": { - "text": { - "description": "The sentence text.", - "$ref": "TextSpan" - }, - "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." - } - } - }, - "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" - }, - "content": { - "type": "string", - "description": "The content of the input in string format." - }, - "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" - }, - "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" - }, - "Sentiment": { - "description": "Represents the feeling associated with the entire text or entities in\nthe text.", - "type": "object", - "properties": { - "score": { - "format": "float", - "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", - "type": "number" - }, - "magnitude": { - "format": "float", - "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", - "type": "number" - } - }, - "id": "Sentiment" - }, - "AnalyzeEntitiesRequest": { - "description": "The entity analysis request message.", - "type": "object", - "properties": { - "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" - ] - }, - "document": { - "$ref": "Document", - "description": "Input document." - } - }, - "id": "AnalyzeEntitiesRequest" - }, - "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": { - "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" - }, - "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": { - "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" - ] - }, - "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": { - "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.", + "id": "TextSpan" + }, + "Token": { + "description": "Represents the smallest syntactic building block of the text.", + "type": "object", + "properties": { + "lemma": { + "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", "type": "string" }, - "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" - ] + "partOfSpeech": { + "description": "Parts of speech tag for this token.", + "$ref": "PartOfSpeech" }, - "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" - ] + "dependencyEdge": { + "description": "Dependency tree parse for this token.", + "$ref": "DependencyEdge" }, - "tag": { - "type": "string", - "enumDescriptions": [ - "Unknown", - "Adjective", - "Adposition (preposition and postposition)", - "Adverb", - "Conjunction", - "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" - ], - "enum": [ - "UNKNOWN", - "ADJ", - "ADP", - "ADV", - "CONJ", - "DET", - "NOUN", - "NUM", - "PRON", - "PRT", - "PUNCT", - "VERB", - "X", - "AFFIX" - ], - "description": "The part of speech tag." + "text": { + "description": "The token text.", + "$ref": "TextSpan" + } + }, + "id": "Token" + }, + "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": { + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + }, + "type": "array", + "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use." }, - "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" + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" }, - "person": { - "enumDescriptions": [ - "Person is not applicable in the analyzed language or is not predicted.", - "First", - "Second", - "Third", - "Reflexive" - ], + "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" + } + } + }, + "EntityMention": { + "properties": { + "type": { "enum": [ - "PERSON_UNKNOWN", - "FIRST", - "SECOND", - "THIRD", - "REFLEXIVE_PERSON" + "TYPE_UNKNOWN", + "PROPER", + "COMMON" ], - "description": "The grammatical person.", - "type": "string" - }, - "proper": { - "description": "The grammatical properness.", + "description": "The type of the entity mention.", "type": "string", "enumDescriptions": [ - "Proper is not applicable in the analyzed language or is not predicted.", - "Proper", - "Not proper" - ], - "enum": [ - "PROPER_UNKNOWN", - "PROPER", - "NOT_PROPER" + "Unknown", + "Proper name", + "Common noun (or noun compound)" ] + }, + "text": { + "description": "The mention text.", + "$ref": "TextSpan" } }, - "id": "PartOfSpeech" + "id": "EntityMention", + "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", + "type": "object" }, - "AnalyzeSyntaxRequest": { - "description": "The syntax analysis request 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": { - "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" + "extractDocumentSentiment": { + "type": "boolean", + "description": "Extract document-level sentiment." }, - "document": { - "description": "Input document.", - "$ref": "Document" + "extractSyntax": { + "description": "Extract syntax information.", + "type": "boolean" + }, + "extractEntities": { + "description": "Extract entities.", + "type": "boolean" } }, - "id": "AnalyzeSyntaxRequest" + "id": "Features" }, - "AnalyzeSentimentResponse": { - "description": "The sentiment 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": "The sentiment for all the sentences in the document.", - "items": { - "$ref": "Sentence" - }, - "type": "array" + "text": { + "description": "The sentence text.", + "$ref": "TextSpan" }, - "documentSentiment": { + "sentiment": { "$ref": "Sentiment", - "description": "The overall sentiment of the input document." + "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": "AnalyzeSentimentResponse" + "id": "Sentence" }, - "AnalyzeEntitiesResponse": { + "Document": { + "description": "################################################################ #\n\nRepresents the input to API methods.", "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." + "content": { + "description": "The content of the input in string format.", + "type": "string" }, - "entities": { - "description": "The recognized entities in the input document.", - "items": { - "$ref": "Entity" - }, - "type": "array" + "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" + }, + "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": "AnalyzeEntitiesResponse", - "description": "The entity analysis response message." + "id": "Document" }, - "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.", + "Sentiment": { + "description": "Represents the feeling associated with the entire text or entities in\nthe text.", "type": "object", "properties": { - "mentions": { - "items": { - "$ref": "EntityMention" - }, - "type": "array", - "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions." - }, - "name": { - "description": "The representative name for the entity.", - "type": "string" - }, - "salience": { + "score": { "format": "float", - "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.", + "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", "type": "number" }, - "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" - }, - "type": { - "description": "The entity type.", - "type": "string", - "enumDescriptions": [ - "Unknown", - "Person", - "Location", - "Organization", - "Event", - "Work of art", - "Consumer goods", - "Other types" - ], - "enum": [ - "UNKNOWN", - "PERSON", - "LOCATION", - "ORGANIZATION", - "EVENT", - "WORK_OF_ART", - "CONSUMER_GOOD", - "OTHER" - ] + "magnitude": { + "format": "float", + "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", + "type": "number" } - } + }, + "id": "Sentiment" }, - "AnalyzeSyntaxResponse": { - "description": "The syntax analysis response message.", + "AnalyzeEntitiesRequest": { + "description": "The entity analysis request 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.", + "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" }, - "sentences": { - "description": "Sentences in the input document.", - "items": { - "$ref": "Sentence" - }, - "type": "array" - }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.", - "items": { - "$ref": "Token" - }, - "type": "array" + "document": { + "$ref": "Document", + "description": "Input document." } }, - "id": "AnalyzeSyntaxResponse" + "id": "AnalyzeEntitiesRequest" } }, "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", @@ -1081,5 +906,180 @@ }, "rootUrl": "https://language.googleapis.com/", "ownerDomain": "google.com", - "name": "language" + "name": "language", + "batchPath": "batch", + "title": "Google Cloud Natural Language API", + "ownerName": "Google", + "resources": { + "documents": { + "methods": { + "analyzeEntities": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnalyzeEntitiesResponse" + }, + "scopes": [ + "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." + }, + "analyzeSyntax": { + "flatPath": "v1/documents:analyzeSyntax", + "path": "v1/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.", + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnalyzeSyntaxResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {} + }, + "analyzeSentiment": { + "id": "language.documents.analyzeSentiment", + "path": "v1/documents:analyzeSentiment", + "description": "Analyzes the sentiment of the provided text.", + "request": { + "$ref": "AnalyzeSentimentRequest" + }, + "response": { + "$ref": "AnalyzeSentimentResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/documents:analyzeSentiment" + }, + "annotateText": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnnotateTextResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/documents:annotateText", + "path": "v1/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." + } + } + } + }, + "parameters": { + "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.", + "default": "true", + "type": "boolean" + }, + "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" + }, + "key": { + "description": "API key. 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": { + "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.", + "default": "true", + "type": "boolean", + "location": "query" + } + }, + "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.", + "servicePath": "", + "basePath": "" } diff --git a/DiscoveryJson/language_v1beta1.json b/DiscoveryJson/language_v1beta1.json index dd4f95864b..07d897d167 100644 --- a/DiscoveryJson/language_v1beta1.json +++ b/DiscoveryJson/language_v1beta1.json @@ -1,727 +1,431 @@ { - "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" - } - } - } - }, - "rootUrl": "https://language.googleapis.com/", - "ownerDomain": "google.com", - "name": "language", - "batchPath": "batch", - "title": "Google Cloud Natural Language API", - "ownerName": "Google", - "resources": { - "documents": { - "methods": { - "annotateText": { - "description": "A convenience method that provides all the features that analyzeSentiment,\nanalyzeEntities, and analyzeSyntax provide in one call.", - "request": { - "$ref": "AnnotateTextRequest" - }, - "response": { - "$ref": "AnnotateTextResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "schemas": { + "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" ], - "flatPath": "v1beta1/documents:annotateText", - "id": "language.documents.annotateText", - "path": "v1beta1/documents:annotateText" - }, - "analyzeEntities": { - "flatPath": "v1beta1/documents:analyzeEntities", - "id": "language.documents.analyzeEntities", - "path": "v1beta1/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" - }, - "response": { - "$ref": "AnalyzeEntitiesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "enum": [ + "FORM_UNKNOWN", + "ADNOMIAL", + "AUXILIARY", + "COMPLEMENTIZER", + "FINAL_ENDING", + "GERUND", + "REALIS", + "IRREALIS", + "SHORT", + "LONG", + "ORDER", + "SPECIFIC" ] }, - "analyzeSyntax": { - "response": { - "$ref": "AnalyzeSyntaxResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "number": { + "enum": [ + "NUMBER_UNKNOWN", + "SINGULAR", + "PLURAL", + "DUAL" ], - "flatPath": "v1beta1/documents:analyzeSyntax", - "id": "language.documents.analyzeSyntax", - "path": "v1beta1/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" - } + "description": "The grammatical number.", + "type": "string", + "enumDescriptions": [ + "Number is not applicable in the analyzed language or is not predicted.", + "Singular", + "Plural", + "Dual" + ] }, - "analyzeSentiment": { - "response": { - "$ref": "AnalyzeSentimentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "voice": { + "enum": [ + "VOICE_UNKNOWN", + "ACTIVE", + "CAUSATIVE", + "PASSIVE" ], - "parameters": {}, - "flatPath": "v1beta1/documents:analyzeSentiment", - "id": "language.documents.analyzeSentiment", - "path": "v1beta1/documents:analyzeSentiment", - "request": { - "$ref": "AnalyzeSentimentRequest" - }, - "description": "Analyzes the sentiment of the provided text." - } - } - } - }, - "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" - }, - "$.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": { - "type": "string", - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token." - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "location": "query" - } - }, - "version": "v1beta1", - "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.", - "servicePath": "", - "basePath": "", - "revision": "20170619", - "documentationLink": "https://cloud.google.com/natural-language/", - "id": "language:v1beta1", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "AnalyzeEntitiesResponse": { - "description": "The entity 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" + "description": "The grammatical voice.", + "type": "string", + "enumDescriptions": [ + "Voice is not applicable in the analyzed language or is not predicted.", + "Active", + "Causative", + "Passive" + ] }, - "entities": { - "description": "The recognized entities in the input document.", - "items": { - "$ref": "Entity" - }, - "type": "array" - } - }, - "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": { - "salience": { - "format": "float", - "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.", - "type": "number" + "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" + ] }, - "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" - } + "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" + ] }, - "type": { - "description": "The entity type.", + "tag": { + "description": "The part of speech tag.", "type": "string", "enumDescriptions": [ "Unknown", - "Person", - "Location", - "Organization", - "Event", - "Work of art", - "Consumer goods", - "Other types" + "Adjective", + "Adposition (preposition and postposition)", + "Adverb", + "Conjunction", + "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" ], "enum": [ "UNKNOWN", - "PERSON", - "LOCATION", - "ORGANIZATION", - "EVENT", - "WORK_OF_ART", - "CONSUMER_GOOD", - "OTHER" + "ADJ", + "ADP", + "ADV", + "CONJ", + "DET", + "NOUN", + "NUM", + "PRON", + "PRT", + "PUNCT", + "VERB", + "X", + "AFFIX" ] }, - "mentions": { - "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", - "items": { - "$ref": "EntityMention" - }, - "type": "array" - }, - "name": { - "description": "The representative name for the entity.", + "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" - } - }, - "id": "Entity" - }, - "AnalyzeSyntaxResponse": { - "type": "object", - "properties": { - "sentences": { - "description": "Sentences in the input document.", - "items": { - "$ref": "Sentence" - }, - "type": "array" }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.", - "items": { - "$ref": "Token" - }, - "type": "array" + "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" + ] }, - "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.", + "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" - } - }, - "id": "AnalyzeSyntaxResponse", - "description": "The syntax analysis response message." - }, - "AnnotateTextRequest": { - "properties": { - "encodingType": { + }, + "case": { "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "CASE_UNKNOWN", + "ACCUSATIVE", + "ADVERBIAL", + "COMPLEMENTIVE", + "DATIVE", + "GENITIVE", + "INSTRUMENTAL", + "LOCATIVE", + "NOMINATIVE", + "OBLIQUE", + "PARTITIVE", + "PREPOSITIONAL", + "REFLEXIVE_CASE", + "RELATIVE_CASE", + "VOCATIVE" ], - "description": "The encoding type used by the API to calculate offsets.", + "description": "The grammatical case.", "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." - ] - }, - "document": { - "$ref": "Document", - "description": "Input document." + "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" + ] }, - "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" - }, - "AnalyzeSentimentRequest": { - "description": "The sentiment analysis request message.", - "type": "object", - "properties": { - "encodingType": { - "type": "string", + "tense": { "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." + "Tense is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Future", + "Past", + "Present", + "Imperfect", + "Pluperfect" ], "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "TENSE_UNKNOWN", + "CONDITIONAL_TENSE", + "FUTURE", + "PAST", + "PRESENT", + "IMPERFECT", + "PLUPERFECT" ], - "description": "The encoding type used by the API to calculate sentence offsets for the\nsentence sentiment." - }, - "document": { - "description": "Input document.", - "$ref": "Document" - } - }, - "id": "AnalyzeSentimentRequest" - }, - "AnnotateTextResponse": { - "description": "The text annotations 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.", + "description": "The grammatical tense.", "type": "string" }, - "sentences": { - "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "items": { - "$ref": "Sentence" - }, - "type": "array" - }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "items": { - "$ref": "Token" - }, - "type": "array" - }, - "entities": { - "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", - "items": { - "$ref": "Entity" - }, - "type": "array" - }, - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." - } - }, - "id": "AnnotateTextResponse" - }, - "DependencyEdge": { - "properties": { - "label": { + "reciprocity": { + "enumDescriptions": [ + "Reciprocity is not applicable in the analyzed language or is not\npredicted.", + "Reciprocal", + "Non-reciprocal" + ], "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" + "RECIPROCITY_UNKNOWN", + "RECIPROCAL", + "NON_RECIPROCAL" ], - "description": "The parse label for the token.", - "type": "string", - "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)", - "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)" - ] - }, - "headTokenIndex": { - "format": "int32", - "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.", - "type": "integer" + "description": "The grammatical reciprocity.", + "type": "string" } - }, - "id": "DependencyEdge", - "description": "Represents dependency parse tree information for a token.", - "type": "object" + }, + "id": "PartOfSpeech" }, - "Token": { - "description": "Represents the smallest syntactic building block of the text.", + "AnalyzeSyntaxRequest": { + "id": "AnalyzeSyntaxRequest", + "description": "The syntax analysis request message.", "type": "object", "properties": { - "dependencyEdge": { - "description": "Dependency tree parse for this token.", - "$ref": "DependencyEdge" - }, - "text": { - "description": "The token text.", - "$ref": "TextSpan" - }, - "lemma": { + "encodingType": { + "enum": [ + "NONE", + "UTF8", + "UTF16", + "UTF32" + ], + "description": "The encoding type used by the API to calculate offsets.", "type": "string", - "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token." + "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." + ] }, - "partOfSpeech": { - "$ref": "PartOfSpeech", - "description": "Parts of speech tag for this token." + "document": { + "$ref": "Document", + "description": "Input document." } - }, - "id": "Token" + } }, - "TextSpan": { + "AnalyzeSentimentResponse": { + "description": "The sentiment analysis response message.", + "type": "object", "properties": { - "content": { - "description": "The content of the output text.", - "type": "string" + "sentences": { + "items": { + "$ref": "Sentence" + }, + "type": "array", + "description": "The sentiment for all the sentences in the document." }, - "beginOffset": { - "format": "int32", - "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", - "type": "integer" + "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" } }, - "id": "TextSpan", - "description": "Represents an output piece of text.", - "type": "object" + "id": "AnalyzeSentimentResponse" }, - "Status": { + "AnalyzeEntitiesResponse": { + "id": "AnalyzeEntitiesResponse", + "description": "The entity analysis response message.", + "type": "object", "properties": { - "details": { - "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.", + "entities": { + "description": "The recognized entities in the input document.", "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } + "$ref": "Entity" }, "type": "array" }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "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": "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" + } }, - "Features": { - "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", + "Entity": { "type": "object", "properties": { - "extractDocumentSentiment": { - "description": "Extract document-level sentiment.", - "type": "boolean" + "salience": { + "type": "number", + "format": "float", + "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." }, - "extractSyntax": { - "description": "Extract syntax information.", - "type": "boolean" + "metadata": { + "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." }, - "extractEntities": { - "description": "Extract entities.", - "type": "boolean" - } - }, - "id": "Features" - }, - "EntityMention": { - "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", - "type": "object", - "properties": { "type": { - "description": "The type of the entity mention.", + "enum": [ + "UNKNOWN", + "PERSON", + "LOCATION", + "ORGANIZATION", + "EVENT", + "WORK_OF_ART", + "CONSUMER_GOOD", + "OTHER" + ], + "description": "The entity type.", "type": "string", "enumDescriptions": [ "Unknown", - "Proper name", - "Common noun (or noun compound)" - ], - "enum": [ - "TYPE_UNKNOWN", - "PROPER", - "COMMON" + "Person", + "Location", + "Organization", + "Event", + "Work of art", + "Consumer goods", + "Other types" ] }, - "text": { - "description": "The mention text.", - "$ref": "TextSpan" - } - }, - "id": "EntityMention" - }, - "Sentence": { - "properties": { - "text": { - "$ref": "TextSpan", - "description": "The sentence text." + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "items": { + "$ref": "EntityMention" + }, + "type": "array" }, - "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" + "name": { + "description": "The representative name for the entity.", + "type": "string" } }, - "id": "Sentence", - "description": "Represents a sentence in the input document.", - "type": "object" + "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." }, - "Document": { - "description": "################################################################ #\n\nRepresents the input to API methods.", + "AnalyzeSyntaxResponse": { "type": "object", "properties": { - "content": { - "type": "string", - "description": "The content of the input in string format." - }, - "type": { - "type": "string", - "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." - }, - "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.", + "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.", + "items": { + "$ref": "Sentence" + }, + "type": "array" + }, + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.", + "items": { + "$ref": "Token" + }, + "type": "array" } }, - "id": "Document" + "id": "AnalyzeSyntaxResponse", + "description": "The syntax analysis response message." }, - "AnalyzeEntitiesRequest": { - "description": "The entity analysis request message.", + "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": { + "document": { + "$ref": "Document", + "description": "Input document." + }, + "features": { + "description": "The enabled features.", + "$ref": "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.", @@ -734,357 +438,653 @@ "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" + } + }, + "id": "AnnotateTextRequest" + }, + "AnalyzeSentimentRequest": { + "description": "The sentiment analysis request message.", + "type": "object", + "properties": { "document": { "$ref": "Document", "description": "Input document." + }, + "encodingType": { + "enum": [ + "NONE", + "UTF8", + "UTF16", + "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." + ] } }, - "id": "AnalyzeEntitiesRequest" + "id": "AnalyzeSentimentRequest" }, - "Sentiment": { - "description": "Represents the feeling associated with the entire text or entities in\nthe text.", - "type": "object", + "AnnotateTextResponse": { "properties": { - "score": { - "format": "float", - "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", - "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" + }, + "sentences": { + "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "items": { + "$ref": "Sentence" + }, + "type": "array" + }, + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "items": { + "$ref": "Token" + }, + "type": "array" }, - "polarity": { - "format": "float", - "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.", - "type": "number" + "entities": { + "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", + "items": { + "$ref": "Entity" + }, + "type": "array" }, - "magnitude": { - "format": "float", - "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", - "type": "number" + "documentSentiment": { + "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment.", + "$ref": "Sentiment" } }, - "id": "Sentiment" + "id": "AnnotateTextResponse", + "description": "The text annotations response message.", + "type": "object" }, - "PartOfSpeech": { - "description": "Represents part of speech information for a token.", + "DependencyEdge": { + "description": "Represents dependency parse tree information for a token.", "type": "object", "properties": { - "form": { + "label": { "enum": [ - "FORM_UNKNOWN", - "ADNOMIAL", - "AUXILIARY", - "COMPLEMENTIZER", - "FINAL_ENDING", - "GERUND", - "REALIS", - "IRREALIS", - "SHORT", - "LONG", - "ORDER", - "SPECIFIC" + "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" ], - "description": "The grammatical form.", + "description": "The parse label for the token.", "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" + "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)", + "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)" ] }, - "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" - }, - "voice": { - "type": "string", - "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." - }, - "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 grammatical aspect.", + "headTokenIndex": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "DependencyEdge" + }, + "Token": { + "type": "object", + "properties": { + "lemma": { + "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", "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." + "partOfSpeech": { + "description": "Parts of speech tag for this token.", + "$ref": "PartOfSpeech" }, - "tag": { - "enumDescriptions": [ - "Unknown", - "Adjective", - "Adposition (preposition and postposition)", - "Adverb", - "Conjunction", - "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" - ], - "enum": [ - "UNKNOWN", - "ADJ", - "ADP", - "ADV", - "CONJ", - "DET", - "NOUN", - "NUM", - "PRON", - "PRT", - "PUNCT", - "VERB", - "X", - "AFFIX" - ], - "description": "The part of speech tag.", - "type": "string" + "dependencyEdge": { + "$ref": "DependencyEdge", + "description": "Dependency tree parse for this token." }, - "gender": { - "enum": [ - "GENDER_UNKNOWN", - "FEMININE", - "MASCULINE", - "NEUTER" - ], - "description": "The grammatical gender.", - "type": "string", - "enumDescriptions": [ - "Gender is not applicable in the analyzed language or is not predicted.", - "Feminine", - "Masculine", - "Neuter" - ] + "text": { + "$ref": "TextSpan", + "description": "The token text." + } + }, + "id": "Token", + "description": "Represents the smallest syntactic building block of the text." + }, + "TextSpan": { + "description": "Represents an output piece of text.", + "type": "object", + "properties": { + "beginOffset": { + "format": "int32", + "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", + "type": "integer" }, - "person": { - "enum": [ - "PERSON_UNKNOWN", - "FIRST", - "SECOND", - "THIRD", - "REFLEXIVE_PERSON" - ], - "description": "The grammatical person.", + "content": { "type": "string", - "enumDescriptions": [ - "Person is not applicable in the analyzed language or is not predicted.", - "First", - "Second", - "Third", - "Reflexive" - ] + "description": "The content of the output text." + } + }, + "id": "TextSpan" + }, + "Status": { + "type": "object", + "properties": { + "details": { + "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.", + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + }, + "type": "array" }, - "proper": { + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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", + "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." + }, + "EntityMention": { + "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", + "type": "object", + "properties": { + "type": { "enumDescriptions": [ - "Proper is not applicable in the analyzed language or is not predicted.", - "Proper", - "Not proper" + "Unknown", + "Proper name", + "Common noun (or noun compound)" ], "enum": [ - "PROPER_UNKNOWN", + "TYPE_UNKNOWN", "PROPER", - "NOT_PROPER" + "COMMON" ], - "description": "The grammatical properness.", + "description": "The type of the entity mention.", "type": "string" }, - "case": { + "text": { + "$ref": "TextSpan", + "description": "The mention text." + } + }, + "id": "EntityMention" + }, + "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": { + "description": "Extract entities.", + "type": "boolean" + }, + "extractDocumentSentiment": { + "type": "boolean", + "description": "Extract document-level sentiment." + }, + "extractSyntax": { + "description": "Extract syntax information.", + "type": "boolean" + } + }, + "id": "Features" + }, + "Document": { + "description": "################################################################ #\n\nRepresents the input to API methods.", + "type": "object", + "properties": { + "content": { "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 grammatical case." + "description": "The content of the input in string format." }, - "tense": { + "type": { "enum": [ - "TENSE_UNKNOWN", - "CONDITIONAL_TENSE", - "FUTURE", - "PAST", - "PRESENT", - "IMPERFECT", - "PLUPERFECT" + "TYPE_UNSPECIFIED", + "PLAIN_TEXT", + "HTML" ], - "description": "The grammatical tense.", + "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", "type": "string", "enumDescriptions": [ - "Tense is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Future", - "Past", - "Present", - "Imperfect", - "Pluperfect" + "The content type is not specified.", + "Plain text", + "HTML" ] }, - "reciprocity": { - "enum": [ - "RECIPROCITY_UNKNOWN", - "RECIPROCAL", - "NON_RECIPROCAL" - ], - "description": "The grammatical reciprocity.", + "gcsContentUri": { "type": "string", - "enumDescriptions": [ - "Reciprocity is not applicable in the analyzed language or is not\npredicted.", - "Reciprocal", - "Non-reciprocal" - ] + "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." + }, + "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": "PartOfSpeech" + "id": "Document" }, - "AnalyzeSyntaxRequest": { + "Sentence": { + "id": "Sentence", + "description": "Represents a sentence in the input document.", + "type": "object", + "properties": { + "text": { + "description": "The sentence text.", + "$ref": "TextSpan" + }, + "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" + } + } + }, + "Sentiment": { + "description": "Represents the feeling associated with the entire text or entities in\nthe text.", "type": "object", + "properties": { + "score": { + "format": "float", + "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", + "type": "number" + }, + "polarity": { + "format": "float", + "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.", + "type": "number" + }, + "magnitude": { + "format": "float", + "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", + "type": "number" + } + }, + "id": "Sentiment" + }, + "AnalyzeEntitiesRequest": { "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.", - "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." + "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." + ] }, "document": { "$ref": "Document", "description": "Input document." } }, - "id": "AnalyzeSyntaxRequest", - "description": "The syntax analysis request message." - }, - "AnalyzeSentimentResponse": { - "type": "object", - "properties": { - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment of the input document." + "id": "AnalyzeEntitiesRequest", + "description": "The entity analysis request message.", + "type": "object" + } + }, + "protocol": "rest", + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "canonicalName": "Cloud Natural Language", + "auth": { + "oauth2": { + "scopes": { + "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": "Google Cloud Natural Language API", + "ownerName": "Google", + "resources": { + "documents": { + "methods": { + "annotateText": { + "flatPath": "v1beta1/documents:annotateText", + "id": "language.documents.annotateText", + "path": "v1beta1/documents:annotateText", + "description": "A convenience method that provides all the features that analyzeSentiment,\nanalyzeEntities, and analyzeSyntax provide in one call.", + "request": { + "$ref": "AnnotateTextRequest" + }, + "response": { + "$ref": "AnnotateTextResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "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." + "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" + }, + "response": { + "$ref": "AnalyzeEntitiesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/documents:analyzeEntities", + "id": "language.documents.analyzeEntities", + "path": "v1beta1/documents:analyzeEntities" }, - "sentences": { - "description": "The sentiment for all the sentences in the document.", - "items": { - "$ref": "Sentence" + "analyzeSyntax": { + "id": "language.documents.analyzeSyntax", + "path": "v1beta1/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" }, - "type": "array" + "response": { + "$ref": "AnalyzeSyntaxResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/documents:analyzeSyntax" + }, + "analyzeSentiment": { + "response": { + "$ref": "AnalyzeSentimentResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta1/documents:analyzeSentiment", + "id": "language.documents.analyzeSentiment", + "path": "v1beta1/documents:analyzeSentiment", + "request": { + "$ref": "AnalyzeSentimentRequest" + }, + "description": "Analyzes the sentiment of the provided text." } - }, - "id": "AnalyzeSentimentResponse", - "description": "The sentiment analysis response message." + } } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" + "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": { + "type": "string", + "location": "query", + "description": "OAuth access token." + }, + "quotaUser": { + "location": "query", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string" + }, + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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" + ] + }, + "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" + } }, - "protocol": "rest" + "version": "v1beta1", + "baseUrl": "https://language.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", + "basePath": "", + "id": "language:v1beta1", + "revision": "20170619", + "documentationLink": "https://cloud.google.com/natural-language/", + "discoveryVersion": "v1", + "version_module": "True" } diff --git a/DiscoveryJson/language_v1beta2.json b/DiscoveryJson/language_v1beta2.json index 88094a2648..28d53b4819 100644 --- a/DiscoveryJson/language_v1beta2.json +++ b/DiscoveryJson/language_v1beta2.json @@ -1,19 +1,458 @@ { + "ownerName": "Google", + "resources": { + "documents": { + "methods": { + "annotateText": { + "response": { + "$ref": "AnnotateTextResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "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" + } + }, + "analyzeEntitySentiment": { + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/documents:analyzeEntitySentiment", + "id": "language.documents.analyzeEntitySentiment", + "path": "v1beta2/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": { + "response": { + "$ref": "AnalyzeEntitiesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "analyzeSyntax": { + "response": { + "$ref": "AnalyzeSyntaxResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta2/documents:analyzeSyntax", + "id": "language.documents.analyzeSyntax", + "path": "v1beta2/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." + }, + "analyzeSentiment": { + "response": { + "$ref": "AnalyzeSentimentResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta2/documents:analyzeSentiment", + "id": "language.documents.analyzeSentiment", + "path": "v1beta2/documents:analyzeSentiment", + "request": { + "$ref": "AnalyzeSentimentRequest" + }, + "description": "Analyzes the sentiment of the provided text." + } + } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "type": "boolean", + "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" + }, + "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": { + "enumDescriptions": [ + "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": { + "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": { + "default": "true", + "type": "boolean", + "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" + } + }, + "version": "v1beta2", + "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.", + "servicePath": "", + "basePath": "", + "revision": "20170619", + "documentationLink": "https://cloud.google.com/natural-language/", + "id": "language:v1beta2", "discoveryVersion": "v1", "version_module": "True", "schemas": { + "AnalyzeSentimentRequest": { + "description": "The sentiment analysis request message.", + "type": "object", + "properties": { + "encodingType": { + "enum": [ + "NONE", + "UTF8", + "UTF16", + "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." + ] + }, + "document": { + "description": "Input document.", + "$ref": "Document" + } + }, + "id": "AnalyzeSentimentRequest" + }, + "AnnotateTextResponse": { + "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. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "items": { + "$ref": "Sentence" + }, + "type": "array" + }, + "tokens": { + "items": { + "$ref": "Token" + }, + "type": "array", + "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax." + }, + "entities": { + "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", + "items": { + "$ref": "Entity" + }, + "type": "array" + }, + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." + } + }, + "id": "AnnotateTextResponse", + "description": "The text annotations response message.", + "type": "object" + }, + "DependencyEdge": { + "id": "DependencyEdge", + "description": "Represents dependency parse tree information for a token.", + "type": "object", + "properties": { + "label": { + "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)", + "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)" + ], + "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" + ], + "description": "The parse label for the token.", + "type": "string" + }, + "headTokenIndex": { + "format": "int32", + "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.", + "type": "integer" + } + } + }, + "TextSpan": { + "type": "object", + "properties": { + "beginOffset": { + "format": "int32", + "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", + "type": "integer" + }, + "content": { + "description": "The content of the output text.", + "type": "string" + } + }, + "id": "TextSpan", + "description": "Represents an output piece of text." + }, "Token": { "description": "Represents the smallest syntactic building block of the text.", "type": "object", "properties": { - "lemma": { - "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", - "type": "string" - }, - "partOfSpeech": { - "description": "Parts of speech tag for this token.", - "$ref": "PartOfSpeech" - }, "dependencyEdge": { "description": "Dependency tree parse for this token.", "$ref": "DependencyEdge" @@ -21,34 +460,22 @@ "text": { "description": "The token text.", "$ref": "TextSpan" - } - }, - "id": "Token" - }, - "TextSpan": { - "id": "TextSpan", - "description": "Represents an output piece of text.", - "type": "object", - "properties": { - "content": { - "description": "The content of the output text.", + }, + "lemma": { + "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", "type": "string" }, - "beginOffset": { - "type": "integer", - "format": "int32", - "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request." + "partOfSpeech": { + "$ref": "PartOfSpeech", + "description": "Parts of speech tag for this token." } - } + }, + "id": "Token" }, "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 will be a\ncommon set of message types for APIs to use.", "items": { @@ -61,9 +488,13 @@ "type": "array" }, "code": { + "type": "integer", "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "description": "The status code, which should be an enum value of google.rpc.Code." + }, + "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" @@ -73,8 +504,8 @@ "type": "object", "properties": { "extractEntitySentiment": { - "type": "boolean", - "description": "Extract entities and their associated sentiment." + "description": "Extract entities and their associated sentiment.", + "type": "boolean" }, "extractDocumentSentiment": { "description": "Extract document-level sentiment.", @@ -92,6 +523,8 @@ "id": "Features" }, "EntityMention": { + "id": "EntityMention", + "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", "type": "object", "properties": { "type": { @@ -109,24 +542,22 @@ ] }, "text": { - "description": "The mention text.", - "$ref": "TextSpan" + "$ref": "TextSpan", + "description": "The mention text." }, "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", - "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported." + } }, "Sentence": { "description": "Represents a sentence in the input document.", "type": "object", "properties": { "text": { - "description": "The sentence text.", - "$ref": "TextSpan" + "$ref": "TextSpan", + "description": "The sentence text." }, "sentiment": { "$ref": "Sentiment", @@ -139,19 +570,13 @@ "description": "################################################################ #\n\nRepresents the input to API methods.", "type": "object", "properties": { - "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" - }, "content": { "description": "The content of the input in string format.", "type": "string" }, "type": { + "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", @@ -161,9 +586,15 @@ "TYPE_UNSPECIFIED", "PLAIN_TEXT", "HTML" - ], - "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", + ] + }, + "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": { + "type": "string", + "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." } }, "id": "Document" @@ -173,6 +604,12 @@ "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", @@ -180,13 +617,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": { "description": "Input document.", @@ -196,6 +627,7 @@ "id": "AnalyzeEntitiesRequest" }, "Sentiment": { + "description": "Represents the feeling associated with the entire text or entities in\nthe text.", "type": "object", "properties": { "score": { @@ -209,26 +641,25 @@ "type": "number" } }, - "id": "Sentiment", - "description": "Represents the feeling associated with the entire text or entities in\nthe text." + "id": "Sentiment" }, "AnalyzeEntitySentimentResponse": { + "id": "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.", "items": { "$ref": "Entity" }, - "type": "array" - }, - "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": "array", + "description": "The recognized entities in the input document with associated sentiments." } - }, - "id": "AnalyzeEntitySentimentResponse" + } }, "AnalyzeEntitySentimentRequest": { "description": "The entity-level sentiment analysis request message.", @@ -251,8 +682,8 @@ ] }, "document": { - "description": "Input document.", - "$ref": "Document" + "$ref": "Document", + "description": "Input document." } }, "id": "AnalyzeEntitySentimentRequest" @@ -261,23 +692,96 @@ "description": "Represents part of speech information for a token.", "type": "object", "properties": { - "aspect": { + "form": { "enum": [ - "ASPECT_UNKNOWN", - "PERFECTIVE", - "IMPERFECTIVE", - "PROGRESSIVE" + "FORM_UNKNOWN", + "ADNOMIAL", + "AUXILIARY", + "COMPLEMENTIZER", + "FINAL_ENDING", + "GERUND", + "REALIS", + "IRREALIS", + "SHORT", + "LONG", + "ORDER", + "SPECIFIC" ], - "description": "The grammatical aspect.", + "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": { + "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" + }, + "voice": { + "description": "The grammatical voice.", "type": "string", + "enumDescriptions": [ + "Voice is not applicable in the analyzed language or is not predicted.", + "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", + "IMPERFECTIVE", + "PROGRESSIVE" + ], + "description": "The grammatical aspect.", + "type": "string" }, "mood": { + "enum": [ + "MOOD_UNKNOWN", + "CONDITIONAL_MOOD", + "IMPERATIVE", + "INDICATIVE", + "INTERROGATIVE", + "JUSSIVE", + "SUBJUNCTIVE" + ], "description": "The grammatical mood.", "type": "string", "enumDescriptions": [ @@ -288,15 +792,6 @@ "Interrogative", "Jussive", "Subjunctive" - ], - "enum": [ - "MOOD_UNKNOWN", - "CONDITIONAL_MOOD", - "IMPERATIVE", - "INDICATIVE", - "INTERROGATIVE", - "JUSSIVE", - "SUBJUNCTIVE" ] }, "tag": { @@ -336,6 +831,12 @@ "type": "string" }, "gender": { + "enumDescriptions": [ + "Gender is not applicable in the analyzed language or is not predicted.", + "Feminine", + "Masculine", + "Neuter" + ], "enum": [ "GENDER_UNKNOWN", "FEMININE", @@ -343,17 +844,9 @@ "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": { - "description": "The grammatical person.", - "type": "string", "enumDescriptions": [ "Person is not applicable in the analyzed language or is not predicted.", "First", @@ -367,24 +860,25 @@ "SECOND", "THIRD", "REFLEXIVE_PERSON" - ] + ], + "description": "The grammatical person.", + "type": "string" }, "proper": { - "enum": [ - "PROPER_UNKNOWN", - "PROPER", - "NOT_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.", @@ -419,9 +913,12 @@ "REFLEXIVE_CASE", "RELATIVE_CASE", "VOCATIVE" - ] + ], + "description": "The grammatical case." }, "tense": { + "description": "The grammatical tense.", + "type": "string", "enumDescriptions": [ "Tense is not applicable in the analyzed language or is not predicted.", "Conditional", @@ -439,9 +936,7 @@ "PRESENT", "IMPERFECT", "PLUPERFECT" - ], - "description": "The grammatical tense.", - "type": "string" + ] }, "reciprocity": { "type": "string", @@ -456,70 +951,6 @@ "NON_RECIPROCAL" ], "description": "The grammatical reciprocity." - }, - "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": { - "description": "The grammatical voice.", - "type": "string", - "enumDescriptions": [ - "Voice is not applicable in the analyzed language or is not predicted.", - "Active", - "Causative", - "Passive" - ], - "enum": [ - "VOICE_UNKNOWN", - "ACTIVE", - "CAUSATIVE", - "PASSIVE" - ] } }, "id": "PartOfSpeech" @@ -540,173 +971,18 @@ "UTF8", "UTF16", "UTF32" - ], - "description": "The encoding type used by the API to calculate offsets.", - "type": "string" - }, - "document": { - "$ref": "Document", - "description": "Input document." - } - }, - "id": "AnalyzeSyntaxRequest" - }, - "AnalyzeSentimentResponse": { - "id": "AnalyzeSentimentResponse", - "description": "The sentiment analysis response message.", - "type": "object", - "properties": { - "sentences": { - "description": "The sentiment for all the sentences in the document.", - "items": { - "$ref": "Sentence" - }, - "type": "array" - }, - "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" - } - } - }, - "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.", - "type": "string" - }, - "entities": { - "description": "The recognized entities in the input document.", - "items": { - "$ref": "Entity" - }, - "type": "array" - } - }, - "id": "AnalyzeEntitiesResponse", - "description": "The entity analysis response message." - }, - "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": { - "name": { - "description": "The representative name for the entity.", - "type": "string" - }, - "type": { - "description": "The entity type.", - "type": "string", - "enumDescriptions": [ - "Unknown", - "Person", - "Location", - "Organization", - "Event", - "Work of art", - "Consumer goods", - "Other types" - ], - "enum": [ - "UNKNOWN", - "PERSON", - "LOCATION", - "ORGANIZATION", - "EVENT", - "WORK_OF_ART", - "CONSUMER_GOOD", - "OTHER" - ] - }, - "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": { - "format": "float", - "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.", - "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.", - "items": { - "$ref": "EntityMention" - }, - "type": "array" - } - }, - "id": "Entity" - }, - "AnalyzeSyntaxResponse": { - "description": "The syntax analysis response message.", - "type": "object", - "properties": { - "sentences": { - "description": "Sentences in the input document.", - "items": { - "$ref": "Sentence" - }, - "type": "array" - }, - "tokens": { - "items": { - "$ref": "Token" - }, - "type": "array", - "description": "Tokens, along with their syntactic information, 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": "AnalyzeSyntaxResponse" - }, - "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": { - "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" - ] + ], + "description": "The encoding type used by the API to calculate offsets.", + "type": "string" }, "document": { - "$ref": "Document", - "description": "Input document." - }, - "features": { - "$ref": "Features", - "description": "The enabled features." + "description": "Input document.", + "$ref": "Document" } }, - "id": "AnnotateTextRequest" + "id": "AnalyzeSyntaxRequest" }, - "AnnotateTextResponse": { - "description": "The text annotations response message.", + "AnalyzeSentimentResponse": { "type": "object", "properties": { "language": { @@ -714,233 +990,151 @@ "type": "string" }, "sentences": { - "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "description": "The sentiment for all the sentences in the document.", "items": { "$ref": "Sentence" }, "type": "array" }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "items": { - "$ref": "Token" - }, - "type": "array" + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment of the input document." + } + }, + "id": "AnalyzeSentimentResponse", + "description": "The sentiment analysis response message." + }, + "AnalyzeEntitiesResponse": { + "description": "The entity 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": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", "items": { "$ref": "Entity" }, - "type": "array" - }, - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." + "type": "array", + "description": "The recognized entities in the input document." } }, - "id": "AnnotateTextResponse" + "id": "AnalyzeEntitiesResponse" }, - "AnalyzeSentimentRequest": { + "AnalyzeSyntaxResponse": { + "description": "The syntax analysis response message.", + "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.", - "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" - ] + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.", + "items": { + "$ref": "Token" + }, + "type": "array" }, - "document": { - "description": "Input document.", - "$ref": "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" + }, + "sentences": { + "description": "Sentences in the input document.", + "items": { + "$ref": "Sentence" + }, + "type": "array" } }, - "id": "AnalyzeSentimentRequest", - "description": "The sentiment analysis request message.", - "type": "object" + "id": "AnalyzeSyntaxResponse" }, - "DependencyEdge": { - "description": "Represents dependency parse tree information for a token.", + "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": { - "headTokenIndex": { - "format": "int32", - "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.", - "type": "integer" - }, - "label": { - "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)", - "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)" - ], - "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" - ], - "description": "The parse label for the token.", + "properties": { + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "items": { + "$ref": "EntityMention" + }, + "type": "array" + }, + "name": { + "description": "The representative name for the entity.", "type": "string" + }, + "type": { + "type": "string", + "enumDescriptions": [ + "Unknown", + "Person", + "Location", + "Organization", + "Event", + "Work of art", + "Consumer goods", + "Other types" + ], + "enum": [ + "UNKNOWN", + "PERSON", + "LOCATION", + "ORGANIZATION", + "EVENT", + "WORK_OF_ART", + "CONSUMER_GOOD", + "OTHER" + ], + "description": "The entity type." + }, + "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": { + "format": "float", + "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.", + "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" + } + }, + "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": { + "enum": [ + "NONE", + "UTF8", + "UTF16", + "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." + ] + }, + "document": { + "$ref": "Document", + "description": "Input document." + }, + "features": { + "$ref": "Features", + "description": "The enabled features." } }, - "id": "DependencyEdge" + "id": "AnnotateTextRequest" } }, "icons": { @@ -962,199 +1156,5 @@ "ownerDomain": "google.com", "name": "language", "batchPath": "batch", - "title": "Google Cloud Natural Language API", - "ownerName": "Google", - "resources": { - "documents": { - "methods": { - "analyzeSentiment": { - "request": { - "$ref": "AnalyzeSentimentRequest" - }, - "description": "Analyzes the sentiment of the provided text.", - "response": { - "$ref": "AnalyzeSentimentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:analyzeSentiment", - "id": "language.documents.analyzeSentiment", - "path": "v1beta2/documents:analyzeSentiment" - }, - "annotateText": { - "response": { - "$ref": "AnnotateTextResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:annotateText", - "id": "language.documents.annotateText", - "path": "v1beta2/documents:annotateText", - "request": { - "$ref": "AnnotateTextRequest" - }, - "description": "A convenience method that provides all syntax, sentiment, entity, and\nclassification features in one call." - }, - "analyzeEntitySentiment": { - "id": "language.documents.analyzeEntitySentiment", - "path": "v1beta2/documents:analyzeEntitySentiment", - "request": { - "$ref": "AnalyzeEntitySentimentRequest" - }, - "description": "Finds entities, similar to AnalyzeEntities in the text and analyzes\nsentiment associated with each entity and its mentions.", - "response": { - "$ref": "AnalyzeEntitySentimentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:analyzeEntitySentiment" - }, - "analyzeEntities": { - "response": { - "$ref": "AnalyzeEntitiesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:analyzeEntities", - "id": "language.documents.analyzeEntities", - "path": "v1beta2/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": { - "path": "v1beta2/documents:analyzeSyntax", - "id": "language.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": "AnalyzeSyntaxResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/documents:analyzeSyntax" - } - } - } - }, - "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.", - "default": "true", - "type": "boolean", - "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.", - "default": "true", - "type": "boolean" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - } - }, - "version": "v1beta2", - "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.", - "servicePath": "", - "basePath": "", - "revision": "20170619", - "documentationLink": "https://cloud.google.com/natural-language/", - "id": "language:v1beta2" + "title": "Google Cloud Natural Language API" } diff --git a/DiscoveryJson/logging_v2.json b/DiscoveryJson/logging_v2.json index 10ec8e2e15..e03c9adc21 100644 --- a/DiscoveryJson/logging_v2.json +++ b/DiscoveryJson/logging_v2.json @@ -1,297 +1,43 @@ { + "version": "v2", + "baseUrl": "https://logging.googleapis.com/", + "servicePath": "", + "description": "Writes log entries and manages your Stackdriver Logging configuration.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "logging:v2", + "documentationLink": "https://cloud.google.com/logging/docs/", + "revision": "20170710", + "discoveryVersion": "v1", + "version_module": "True", "schemas": { - "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" - } - }, - "id": "MonitoredResource" - }, - "WriteLogEntriesRequest": { - "description": "The parameters to WriteLogEntries.", - "type": "object", - "properties": { - "entries": { - "description": "Required. The log entries to write. Values supplied for the fields log_name, resource, and labels in this entries.write request are inserted into those log entries in this list that do not provide their own values.Stackdriver Logging also creates and inserts values for timestamp and insert_id if the entries do not provide them. The created insert_id for the N'th entry in this list will be greater than earlier entries and less than later entries. Otherwise, the order of log entries in this list does not matter.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should write multiple log entries at once rather than calling this method for each individual log entry.", - "items": { - "$ref": "LogEntry" - }, - "type": "array" - }, - "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" - }, - "partialSuccess": { - "type": "boolean", - "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." - }, - "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": "WriteLogEntriesRequest" - }, - "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", + "LogEntrySourceLocation": { "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" - }, - "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. The filter must use the log entry format specified by the output_version_format parameter. For example, in the v2 format:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Optional. The time at which this sink will stop exporting log entries. Log entries are exported only if their timestamp is earlier than the end time. If this field is not supplied, there is no end time. If both a start time and an end time are provided, then the end time must be later than the start time.", - "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": { - "format": "google-datetime", - "description": "Optional. The time at which this sink will begin exporting log entries. Log entries are exported only if their timestamp is not earlier than the start time. The default value of this field is the time the sink is created or updated.", + "file": { + "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", "type": "string" }, - "outputVersionFormat": { - "description": "Optional. The log entry format to use for this sink's exported log entries. The v2 format is used by default. The v1 format is deprecated and should be used only as part of a migration effort to v2. See Migration to the v2 API.", + "function": { "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" - ] - } - }, - "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" - }, - "logNames": { - "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "ListLogsResponse" - }, - "ListSinksResponse": { - "description": "Result returned from ListSinks.", - "type": "object", - "properties": { - "sinks": { - "description": "A list of sinks.", - "items": { - "$ref": "LogSink" - }, - "type": "array" - }, - "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" - }, - "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": { - "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" - }, - "serverIp": { - "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", - "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)." }, - "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" - }, - "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": { - "format": "int32", - "description": "The response code indicating the status of response. Examples: 200, 404.", - "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": { - "format": "google-duration", - "description": "The request processing latency on the server, from the time the request was received until the response was sent.", - "type": "string" - }, - "cacheFillBytes": { - "format": "int64", - "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", - "type": "string" - }, - "requestMethod": { - "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", - "type": "string" - }, - "responseSize": { - "format": "int64", - "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", - "type": "string" - }, - "requestSize": { + "line": { "format": "int64", - "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", + "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", "type": "string" } }, - "id": "HttpRequest" - }, - "LabelDescriptor": { - "description": "A description of a label.", - "type": "object", - "properties": { - "key": { - "description": "The label key.", - "type": "string" - }, - "description": { - "type": "string", - "description": "A human-readable description for the label." - }, - "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": "LabelDescriptor" - }, - "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\".", - "items": { - "$ref": "LabelDescriptor" - }, - "type": "array" - }, - "name": { - "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", - "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" - }, - "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": { "id": "LogEntrySourceLocation", "description": "Additional information about the source code location that produced the log entry.", - "type": "object", - "properties": { - "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": { - "type": "string", - "format": "int64", - "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available." - }, - "file": { - "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", - "type": "string" - } - } + "type": "object" }, "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" + "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.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." }, "entries": { "description": "A list of log entries.", @@ -312,7 +58,6 @@ "type": "string" }, "severity": { - "type": "string", "enumDescriptions": [ "(0) The log entry has no assigned severity level.", "(100) Debug or trace information.", @@ -335,16 +80,17 @@ "ALERT", "EMERGENCY" ], - "description": "Severity of this log entry." + "description": "Severity of this log entry.", + "type": "string" }, "sourceLocation": { - "$ref": "SourceLocation", - "description": "Where in the source code this log message was written." + "description": "Where in the source code this log message was written.", + "$ref": "SourceLocation" }, "time": { - "type": "string", "format": "google-datetime", - "description": "Approximate time when this log entry was made." + "description": "Approximate time when this log entry was made.", + "type": "string" } }, "id": "LogLine" @@ -354,11 +100,11 @@ "type": "object", "properties": { "metrics": { - "description": "A list of logs-based metrics.", "items": { "$ref": "LogMetric" }, - "type": "array" + "type": "array", + "description": "A list of logs-based metrics." }, "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.", @@ -367,22 +113,15 @@ }, "id": "ListLogMetricsResponse" }, - "LogEntry": { - "description": "An individual entry in a log.", + "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" + }, + "LogEntry": { "properties": { "severity": { - "enumDescriptions": [ - "(0) The log entry has no assigned severity level.", - "(100) Debug or trace information.", - "(200) Routine information, such as ongoing status or performance.", - "(300) Normal but significant events, such as start up, shut down, or 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", @@ -395,7 +134,18 @@ "EMERGENCY" ], "description": "Optional. The severity of the log entry. The default value is LogSeverity.DEFAULT.", - "type": "string" + "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", @@ -407,49 +157,53 @@ "type": "string" }, "timestamp": { + "type": "string", "format": "google-datetime", - "description": "Optional. The time the event described by the log entry occurred. If omitted in a new log entry, Stackdriver Logging will insert the time the log entry is received. Stackdriver Logging might reject log entries whose time stamps are more than a couple of hours in the future. Log entries with time stamps in the past are accepted.", - "type": "string" + "description": "Optional. The time the event described by the log entry occurred. If omitted in a new log entry, Stackdriver Logging will insert the time the log entry is received. Stackdriver Logging might reject log entries whose time stamps are more than a couple of hours in the future. Log entries with time stamps in the past are accepted." }, "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]\"\n[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": { - "description": "Optional. Information about the HTTP request associated with this log entry, if applicable.", - "$ref": "HttpRequest" + "$ref": "HttpRequest", + "description": "Optional. Information about the HTTP request associated with this log entry, if applicable." }, "resource": { - "description": "Required. The 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" + "$ref": "MonitoredResource", + "description": "Required. The 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." }, "jsonPayload": { + "description": "The log entry payload, represented as a structure that is expressed as a JSON object.", + "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.", - "type": "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 will insert its own unique identifier. The insert_id is 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" }, "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" - } + }, + "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" + }, + "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" }, "labels": { "additionalProperties": { @@ -457,19 +211,11 @@ }, "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": "LogEntry" - }, - "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" + "id": "LogEntry", + "description": "An individual entry in a log.", + "type": "object" }, "SourceLocation": { "description": "Specifies a location in a source code file.", @@ -484,83 +230,55 @@ "type": "string" }, "line": { - "type": "string", "format": "int64", - "description": "Line within the source file." + "description": "Line within the source file.", + "type": "string" } }, "id": "SourceLocation" }, "ListLogEntriesRequest": { - "id": "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "projectIds": { "items": { "type": "string" }, "type": "array", - "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." + "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." }, "filter": { - "type": "string", - "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." - }, - "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.", + "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" }, - "pageSize": { - "type": "integer", - "format": "int32", - "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." - } - } - }, - "RequestLog": { - "description": "Complete log information about a single HTTP request to an App Engine application.", - "type": "object", - "properties": { - "line": { - "description": "A list of log lines emitted by the application while serving this request.", + "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.", "items": { - "$ref": "LogLine" + "type": "string" }, "type": "array" }, - "taskQueueName": { - "description": "Queue name of the request, in the case of an offline request.", - "type": "string" - }, - "referrer": { - "description": "Referrer URL of 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" + "pageToken": { + "type": "string", + "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." }, - "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" + "pageSize": { + "format": "int32", + "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.", + "type": "integer" }, - "pendingTime": { - "format": "google-duration", - "description": "Time this request spent in the pending request queue.", + "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" + }, + "RequestLog": { + "description": "Complete log information about a single HTTP request to an App Engine application.", + "type": "object", + "properties": { "status": { "format": "int32", "description": "HTTP response status code. Example: 200, 404.", @@ -570,10 +288,15 @@ "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" }, - "taskName": { - "description": "Task name of the request, in the case of an offline request.", + "pendingTime": { + "format": "google-duration", + "description": "Time this request spent in the pending request queue.", "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.", "type": "string" @@ -592,34 +315,34 @@ "description": "Whether this request is finished or active." }, "httpVersion": { - "type": "string", - "description": "HTTP version of request. Example: \"HTTP/1.1\"." + "description": "HTTP version of request. Example: \"HTTP/1.1\".", + "type": "string" }, "startTime": { + "type": "string", "format": "google-datetime", - "description": "Time when the request started.", - "type": "string" + "description": "Time when the request started." }, "latency": { - "type": "string", "format": "google-duration", - "description": "Latency of the request." + "description": "Latency of the request.", + "type": "string" }, "ip": { "description": "Origin IP address.", "type": "string" }, "appId": { - "description": "Application that handled this request.", - "type": "string" + "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" + "type": "string", + "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\"." }, "cost": { "format": "double", @@ -627,8 +350,8 @@ "type": "number" }, "instanceId": { - "description": "An identifier for the instance that handled the request.", - "type": "string" + "type": "string", + "description": "An identifier for the instance that handled the request." }, "megaCycles": { "format": "int64", @@ -661,11 +384,11 @@ "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.", "items": { "$ref": "SourceReference" }, - "type": "array" + "type": "array", + "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": { "format": "int64", @@ -675,6 +398,29 @@ "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.", + "items": { + "$ref": "LogLine" + }, + "type": "array" + }, + "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" } }, "id": "RequestLog" @@ -683,101 +429,366 @@ "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.", "items": { "$ref": "MonitoredResourceDescriptor" }, "type": "array" + } + }, + "id": "ListMonitoredResourceDescriptorsResponse" + }, + "SourceReference": { + "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" + } + }, + "id": "SourceReference" + }, + "WriteLogEntriesResponse": { + "description": "Result returned from WriteLogEntries. empty", + "type": "object", + "properties": {}, + "id": "WriteLogEntriesResponse" + }, + "LogMetric": { + "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.", + "type": "object", + "properties": { + "version": { + "description": "Output only. The API version that created or updated this metric. The version also dictates the syntax of the filter expression. When a value for this field is missing, the default value of V2 should be assumed.", + "type": "string", + "enumDescriptions": [ + "Stackdriver Logging API v2.", + "Stackdriver Logging API v1." + ], + "enum": [ + "V2", + "V1" + ] + }, + "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." + }, + "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" + }, + "description": { + "description": "Optional. A description of this metric, which is used in documentation.", + "type": "string" + } + } + }, + "LogEntryOperation": { + "description": "Additional information about a potentially long-running operation with which a log entry is associated.", + "type": "object", + "properties": { + "last": { + "type": "boolean", + "description": "Optional. Set this to True if this is the last log entry in the operation." + }, + "id": { + "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", + "type": "string" + }, + "first": { + "description": "Optional. Set this to True if this is the first log entry in the operation.", + "type": "boolean" + }, + "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" + } + }, + "id": "LogEntryOperation" + }, + "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" + }, + "WriteLogEntriesRequest": { + "description": "The parameters to WriteLogEntries.", + "type": "object", + "properties": { + "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" + } + }, + "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." + }, + "entries": { + "description": "Required. The log entries to write. Values supplied for the fields log_name, resource, and labels in this entries.write request are inserted into those log entries in this list that do not provide their own values.Stackdriver Logging also creates and inserts values for timestamp and insert_id if the entries do not provide them. The created insert_id for the N'th entry in this list will be greater than earlier entries and less than later entries. Otherwise, the order of log entries in this list does not matter.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should write multiple log entries at once rather than calling this method for each individual log entry.", + "items": { + "$ref": "LogEntry" + }, + "type": "array" + }, + "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" + }, + "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" + } + }, + "id": "WriteLogEntriesRequest" + }, + "LogSink": { + "type": "object", + "properties": { + "outputVersionFormat": { + "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": "Optional. The log entry format to use for this sink's exported log entries. The v2 format is used by default. The v1 format is deprecated and should be used only as part of a migration effort to v2. See Migration to the v2 API.", + "type": "string" + }, + "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": { + "type": "boolean", + "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" + }, + "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. The filter must use the log entry format specified by the output_version_format parameter. For example, in the v2 format:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", + "type": "string" + }, + "endTime": { + "type": "string", + "format": "google-datetime", + "description": "Optional. The time at which this sink will stop exporting log entries. Log entries are exported only if their timestamp is earlier than the end time. If this field is not supplied, there is no end time. If both a start time and an end time are provided, then the end time must be later than the start time." + }, + "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": { + "type": "string", + "format": "google-datetime", + "description": "Optional. The time at which this sink will begin exporting log entries. Log entries are exported only if their timestamp is not earlier than the start time. The default value of this field is the time the sink is created or updated." + } + }, + "id": "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." + }, + "ListLogsResponse": { + "properties": { + "logNames": { + "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "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.", + "type": "object" + }, + "ListSinksResponse": { + "type": "object", + "properties": { + "sinks": { + "description": "A list of sinks.", + "items": { + "$ref": "LogSink" + }, + "type": "array" }, "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.", + "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": "ListMonitoredResourceDescriptorsResponse" + "id": "ListSinksResponse", + "description": "Result returned from ListSinks." }, - "SourceReference": { - "description": "A reference to a particular snapshot of the source tree used to build and deploy an application.", + "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": { - "repository": { + "cacheFillBytes": { + "format": "int64", + "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", + "type": "string" + }, + "requestMethod": { + "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", + "type": "string" + }, + "responseSize": { + "format": "int64", + "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", + "type": "string" + }, + "requestSize": { + "format": "int64", + "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", + "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" + }, + "serverIp": { + "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", + "type": "string" + }, + "remoteIp": { "type": "string", - "description": "Optional. A URI string identifying the repository. Example: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"" + "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\"." }, - "revisionId": { - "description": "The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", + "cacheLookup": { + "type": "boolean", + "description": "Whether or not a cache lookup was attempted." + }, + "cacheHit": { + "description": "Whether or not an entity was served from cache (with or without validation).", + "type": "boolean" + }, + "cacheValidatedWithOriginServer": { + "type": "boolean", + "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." + }, + "status": { + "format": "int32", + "description": "The response code indicating the status of response. Examples: 200, 404.", + "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": { + "format": "google-duration", + "description": "The request processing latency on the server, from the time the request was received until the response was sent.", "type": "string" } }, - "id": "SourceReference" + "id": "HttpRequest" }, - "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.", + "LabelDescriptor": { "type": "object", "properties": { - "version": { - "enum": [ - "V2", - "V1" - ], - "description": "Output only. The API version that created or updated this metric. The version also dictates the syntax of the filter expression. When a value for this field is missing, the default value of V2 should be assumed.", - "type": "string", - "enumDescriptions": [ - "Stackdriver Logging API v2.", - "Stackdriver Logging API v1." - ] - }, - "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" }, - "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": { + "description": "A human-readable description for the label.", "type": "string" }, - "description": { + "valueType": { + "description": "The type of data that can be assigned to the label.", "type": "string", - "description": "Optional. A description of this metric, which is used in documentation." + "enumDescriptions": [ + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." + ], + "enum": [ + "STRING", + "BOOL", + "INT64" + ] } }, - "id": "LogMetric" + "id": "LabelDescriptor", + "description": "A description of a label." }, - "LogEntryOperation": { + "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": { - "last": { - "description": "Optional. Set this to True if this is the last log entry in the operation.", - "type": "boolean" + "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": { - "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", + "description": { + "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", "type": "string" }, - "first": { - "description": "Optional. Set this to True if this is the first log entry in the operation.", - "type": "boolean" + "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" }, - "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": { + "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\".", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" } }, - "id": "LogEntryOperation", - "description": "Additional information about a potentially long-running operation with which a log entry is associated.", - "type": "object" - }, - "WriteLogEntriesResponse": { - "description": "Result returned from WriteLogEntries. empty", - "type": "object", - "properties": {}, - "id": "WriteLogEntriesResponse" + "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" }, + "protocol": "rest", "canonicalName": "Logging", "auth": { "oauth2": { @@ -807,209 +818,184 @@ "title": "Stackdriver Logging API", "ownerName": "Google", "resources": { - "organizations": { + "billingAccounts": { "resources": { "sinks": { "methods": { - "update": { - "httpMethod": "PUT", + "delete": { + "httpMethod": "DELETE", "parameterOrder": [ "sinkName" ], "response": { - "$ref": "LogSink" + "$ref": "Empty" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], "parameters": { - "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" - }, "sinkName": { - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+/sinks/[^/]+$", + "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\"." + "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\".", + "type": "string", + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", "path": "v2/{+sinkName}", - "id": "logging.organizations.sinks.update", - "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - } + "id": "logging.billingAccounts.sinks.delete", + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." }, - "create": { - "path": "v2/{+parent}/sinks", - "id": "logging.organizations.sinks.create", - "request": { + "get": { + "response": { "$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 current time is outside the sink's start and end times or 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.", - "httpMethod": "POST", "parameterOrder": [ - "parent" + "sinkName" ], - "response": { - "$ref": "LogSink" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" ], "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": { + "sinkName": { "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\".", + "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\".", "type": "string", "required": true, - "pattern": "^organizations/[^/]+$" + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" } }, - "flatPath": "v2/organizations/{organizationsId}/sinks" - }, - "delete": { - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "id": "logging.organizations.sinks.delete", + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "id": "logging.billingAccounts.sinks.get", "path": "v2/{+sinkName}", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", + "description": "Gets a sink." + }, + "list": { + "description": "Lists sinks.", + "httpMethod": "GET", "response": { - "$ref": "Empty" + "$ref": "ListSinksResponse" }, "parameterOrder": [ - "sinkName" + "parent" ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "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": { - "pattern": "^organizations/[^/]+/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\".", + "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": { + "format": "int32", + "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.", + "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", "type": "string", - "required": true - } - } - }, - "get": { - "description": "Gets a sink.", - "response": { - "$ref": "LogSink" + "required": true, + "pattern": "^billingAccounts/[^/]+$", + "location": "path" + } }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.billingAccounts.sinks.list" + }, + "update": { + "httpMethod": "PUT", "parameterOrder": [ "sinkName" ], - "httpMethod": "GET", + "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" + "https://www.googleapis.com/auth/logging.admin" ], "parameters": { + "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" + }, "sinkName": { - "pattern": "^organizations/[^/]+/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\".", + "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\".", "type": "string", - "required": true + "required": true, + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" } }, - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "id": "logging.organizations.sinks.get", - "path": "v2/{+sinkName}" - }, - "list": { - "id": "logging.organizations.sinks.list", - "path": "v2/{+parent}/sinks", - "description": "Lists sinks.", - "response": { - "$ref": "ListSinksResponse" + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.billingAccounts.sinks.update", + "request": { + "$ref": "LogSink" }, + "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field." + }, + "create": { + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "GET", + "response": { + "$ref": "LogSink" + }, "parameters": { "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", + "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\".", "type": "string", "required": true, - "pattern": "^organizations/[^/]+$", - "location": "path" + "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", + "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" - }, - "pageSize": { - "type": "integer", - "location": "query", - "format": "int32", - "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." } }, "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.admin" ], - "flatPath": "v2/organizations/{organizationsId}/sinks" + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.billingAccounts.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 current time is outside the sink's start and end times or 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" + } } } }, "logs": { "methods": { - "delete": { - "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.", - "type": "string", - "required": true, - "pattern": "^organizations/[^/]+/logs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "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.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ] - }, "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" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only", @@ -1017,93 +1003,35 @@ "https://www.googleapis.com/auth/logging.read" ], "parameters": { + "pageSize": { + "location": "query", + "format": "int32", + "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.", + "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", "type": "string", "required": true, - "pattern": "^organizations/[^/]+$" + "pattern": "^billingAccounts/[^/]+$", + "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", - "location": "query" - }, - "pageSize": { - "format": "int32", - "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.", - "type": "integer", - "location": "query" + "type": "string" } }, - "flatPath": "v2/organizations/{organizationsId}/logs", - "id": "logging.organizations.logs.list", + "flatPath": "v2/billingAccounts/{billingAccountsId}/logs", "path": "v2/{+parent}/logs", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." - } - } - } - } - }, - "entries": { - "methods": { - "write": { - "flatPath": "v2/entries:write", - "path": "v2/entries:write", - "id": "logging.entries.write", - "request": { - "$ref": "WriteLogEntriesRequest" - }, - "description": "Writes log entries to Stackdriver Logging.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "WriteLogEntriesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "parameters": {} - }, - "list": { - "id": "logging.entries.list", - "path": "v2/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" - }, - "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" - } - } - }, - "projects": { - "resources": { - "sinks": { - "methods": { + "id": "logging.billingAccounts.logs.list" + }, "delete": { - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", - "id": "logging.projects.sinks.delete", - "path": "v2/{+sinkName}", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", "response": { "$ref": "Empty" }, "parameterOrder": [ - "sinkName" + "logName" ], "httpMethod": "DELETE", "scopes": [ @@ -1111,15 +1039,27 @@ "https://www.googleapis.com/auth/logging.admin" ], "parameters": { - "sinkName": { + "logName": { + "pattern": "^billingAccounts/[^/]+/logs/[^/]+$", "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\".", + "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.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/sinks/[^/]+$" + "required": true } - } - }, + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/logs/{logsId}", + "id": "logging.billingAccounts.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." + } + } + } + } + }, + "folders": { + "resources": { + "sinks": { + "methods": { "get": { "description": "Gets a sink.", "response": { @@ -1137,63 +1077,57 @@ ], "parameters": { "sinkName": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/sinks/[^/]+$", + "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\"." + "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\".", + "type": "string", + "required": true } }, - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", - "id": "logging.projects.sinks.get", + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "id": "logging.folders.sinks.get", "path": "v2/{+sinkName}" }, "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" + "flatPath": "v2/folders/{foldersId}/sinks", + "id": "logging.folders.sinks.list", + "path": "v2/{+parent}/sinks", + "description": "Lists sinks.", + "response": { + "$ref": "ListSinksResponse" + }, + "parameterOrder": [ + "parent" ], + "httpMethod": "GET", "parameters": { "pageSize": { - "type": "integer", - "location": "query", "format": "int32", - "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." + "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.", + "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", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", + "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", - "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." - } - }, - "flatPath": "v2/projects/{projectsId}/sinks", - "id": "logging.projects.sinks.list", - "path": "v2/{+parent}/sinks", - "description": "Lists sinks.", - "response": { - "$ref": "ListSinksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" + "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" + ] }, "update": { - "id": "logging.projects.sinks.update", - "path": "v2/{+sinkName}", - "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - }, "response": { "$ref": "LogSink" }, @@ -1201,30 +1135,33 @@ "sinkName" ], "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], "parameters": { "uniqueWriterIdentity": { - "type": "boolean", "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. 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" }, "sinkName": { - "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\".", "type": "string", - "required": true + "required": true, + "pattern": "^folders/[^/]+/sinks/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}" + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "id": "logging.folders.sinks.update", + "path": "v2/{+sinkName}", + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field." }, "create": { - "flatPath": "v2/projects/{projectsId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.projects.sinks.create", "request": { "$ref": "LogSink" }, @@ -1242,62 +1179,52 @@ ], "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\".", "type": "string", "required": true, - "pattern": "^projects/[^/]+$" + "pattern": "^folders/[^/]+$", + "location": "path" }, "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" } - } - } - } - }, - "logs": { - "methods": { - "list": { - "response": { - "$ref": "ListLogsResponse" }, + "flatPath": "v2/folders/{foldersId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.folders.sinks.create" + }, + "delete": { + "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.", + "httpMethod": "DELETE", "parameterOrder": [ - "parent" + "sinkName" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" ], - "httpMethod": "GET", "parameters": { - "pageSize": { - "format": "int32", - "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.", - "type": "integer", - "location": "query" - }, - "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", + "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\".", "type": "string", "required": true, - "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" + "pattern": "^folders/[^/]+/sinks/[^/]+$" } }, - "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", - "id": "logging.projects.logs.list", - "path": "v2/{+parent}/logs", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." - }, + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}" + } + } + }, + "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": { @@ -1307,233 +1234,311 @@ "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/logs/[^/]+$", - "location": "path" + "pattern": "^folders/[^/]+/logs/[^/]+$" } }, - "flatPath": "v2/projects/{projectsId}/logs/{logsId}", - "id": "logging.projects.logs.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/folders/{foldersId}/logs/{logsId}", + "id": "logging.folders.logs.delete", "path": "v2/{+logName}" - } - } - }, - "metrics": { - "methods": { - "get": { - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", - "path": "v2/{+metricName}", - "id": "logging.projects.metrics.get", - "description": "Gets a logs-based metric.", + }, + "list": { "httpMethod": "GET", "parameterOrder": [ - "metricName" + "parent" ], "response": { - "$ref": "LogMetric" + "$ref": "ListLogsResponse" }, + "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", + "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", + "format": "int32", + "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.", + "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", "type": "string", "required": true, - "pattern": "^projects/[^/]+/metrics/[^/]+$", + "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." + } + } + } + } + }, + "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": { + "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", + "format": "int32", + "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.", + "type": "integer" + } + }, + "flatPath": "v2/monitoredResourceDescriptors", + "id": "logging.monitoredResourceDescriptors.list", + "path": "v2/monitoredResourceDescriptors" + } + } + }, + "organizations": { + "resources": { + "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": { + "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\".", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "id": "logging.organizations.sinks.get", + "path": "v2/{+sinkName}" }, "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" + "flatPath": "v2/organizations/{organizationsId}/sinks", + "id": "logging.organizations.sinks.list", + "path": "v2/{+parent}/sinks", + "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", - "location": "query" + "type": "string" }, "pageSize": { - "location": "query", "format": "int32", "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.", - "type": "integer" + "type": "integer", + "location": "query" }, "parent": { "location": "path", - "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/metrics", - "id": "logging.projects.metrics.list", - "path": "v2/{+parent}/metrics", - "description": "Lists logs-based metrics.", - "response": { - "$ref": "ListLogMetricsResponse" + "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", + "type": "string", + "required": true, + "pattern": "^organizations/[^/]+$" + } }, - "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" + ] }, "update": { "request": { - "$ref": "LogMetric" + "$ref": "LogSink" }, - "description": "Creates or updates a logs-based metric.", + "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter 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": { - "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.", + "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" + }, + "sinkName": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path" + "pattern": "^organizations/[^/]+/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\"." } }, - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", - "id": "logging.projects.metrics.update", - "path": "v2/{+metricName}" + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "id": "logging.organizations.sinks.update", + "path": "v2/{+sinkName}" }, "create": { - "request": { - "$ref": "LogMetric" - }, - "description": "Creates a logs-based metric.", - "response": { - "$ref": "LogMetric" - }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], + "response": { + "$ref": "LogSink" + }, "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\".", "type": "string", - "required": true + "required": true, + "pattern": "^organizations/[^/]+$" + }, + "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/projects/{projectsId}/metrics", - "id": "logging.projects.metrics.create", - "path": "v2/{+parent}/metrics" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.organizations.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 current time is outside the sink's start and end times or 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" + } }, "delete": { - "description": "Deletes a logs-based metric.", + "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.", + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ - "metricName" + "sinkName" ], - "httpMethod": "DELETE", "parameters": { - "metricName": { - "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", + "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\".", "type": "string", "required": true, - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path" + "pattern": "^organizations/[^/]+/sinks/[^/]+$" } }, "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" ], - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", - "id": "logging.projects.metrics.delete", - "path": "v2/{+metricName}" + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}" } } - } - } - }, - "billingAccounts": { - "resources": { - "sinks": { + }, + "logs": { "methods": { - "get": { - "description": "Gets a sink.", + "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" + "logName" ], + "httpMethod": "DELETE", "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\".", + "logName": { "type": "string", "required": true, - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" + "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." } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "id": "logging.billingAccounts.sinks.get", - "path": "v2/{+sinkName}" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/logs/{logsId}", + "id": "logging.organizations.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." }, "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "httpMethod": "GET", "response": { - "$ref": "ListSinksResponse" + "$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": { - "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", - "type": "string", - "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", @@ -1544,53 +1549,72 @@ "format": "int32", "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.", "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": "v2/billingAccounts/{billingAccountsId}/sinks", - "id": "logging.billingAccounts.sinks.list", - "path": "v2/{+parent}/sinks", - "description": "Lists sinks." - }, - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "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" }, - "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\".", + "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", "type": "string", - "required": true, - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", - "location": "path" + "required": true } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.billingAccounts.sinks.update", - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field." - }, + "flatPath": "v2/organizations/{organizationsId}/logs", + "path": "v2/{+parent}/logs", + "id": "logging.organizations.logs.list" + } + } + } + } + }, + "entries": { + "methods": { + "list": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "ListLogEntriesResponse" + }, + "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" + } + }, + "write": { + "response": { + "$ref": "WriteLogEntriesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "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", + "description": "Writes log entries to Stackdriver Logging.", + "request": { + "$ref": "WriteLogEntriesRequest" + } + } + } + }, + "projects": { + "resources": { + "sinks": { + "methods": { "create": { "request": { "$ref": "LogSink" @@ -1609,11 +1633,11 @@ ], "parameters": { "parent": { + "pattern": "^projects/[^/]+$", "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\".", "type": "string", - "required": true, - "pattern": "^billingAccounts/[^/]+$" + "required": true }, "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.", @@ -1621,48 +1645,72 @@ "location": "query" } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", - "id": "logging.billingAccounts.sinks.create", + "flatPath": "v2/projects/{projectsId}/sinks", + "id": "logging.projects.sinks.create", "path": "v2/{+parent}/sinks" }, "delete": { - "response": { - "$ref": "Empty" - }, + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", + "httpMethod": "DELETE", "parameterOrder": [ "sinkName" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "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\".", "type": "string", "required": true, - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/sinks/[^/]+$" } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "id": "logging.billingAccounts.sinks.delete", + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", "path": "v2/{+sinkName}", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." - } - } - }, - "logs": { - "methods": { + "id": "logging.projects.sinks.delete" + }, + "get": { + "description": "Gets a sink.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", + "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\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/sinks/[^/]+$" + } + }, + "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}" + }, "list": { - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "description": "Lists sinks.", "httpMethod": "GET", "parameterOrder": [ "parent" ], "response": { - "$ref": "ListLogsResponse" + "$ref": "ListSinksResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -1671,13 +1719,6 @@ "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", - "type": "string", - "required": true, - "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", @@ -1688,79 +1729,92 @@ "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.", "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", + "type": "string", + "required": true } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/logs", - "path": "v2/{+parent}/logs", - "id": "logging.billingAccounts.logs.list" + "flatPath": "v2/projects/{projectsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.projects.sinks.list" }, - "delete": { - "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.", - "httpMethod": "DELETE", + "update": { + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field.", + "httpMethod": "PUT", "parameterOrder": [ - "logName" + "sinkName" ], "response": { - "$ref": "Empty" + "$ref": "LogSink" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/logging.admin" ], "parameters": { - "logName": { - "pattern": "^billingAccounts/[^/]+/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.", + "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" + }, + "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\".", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" } }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/logs/{logsId}" + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.projects.sinks.update" } } - } - } - }, - "folders": { - "resources": { - "sinks": { + }, + "logs": { "methods": { "delete": { - "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.", + "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": [ - "sinkName" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "logName" + ], "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\".", + "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.", "type": "string", "required": true, - "pattern": "^folders/[^/]+/sinks/[^/]+$", + "pattern": "^projects/[^/]+/logs/[^/]+$", "location": "path" } }, "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" }, - "get": { - "description": "Gets a sink.", + "list": { + "id": "logging.projects.logs.list", + "path": "v2/{+parent}/logs", + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", "response": { - "$ref": "LogSink" + "$ref": "ListLogsResponse" }, "parameterOrder": [ - "sinkName" + "parent" ], "httpMethod": "GET", "scopes": [ @@ -1770,156 +1824,103 @@ "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\".", - "type": "string", - "required": true, - "pattern": "^folders/[^/]+/sinks/[^/]+$" - } - }, - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", - "id": "logging.folders.sinks.get", - "path": "v2/{+sinkName}" - }, - "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": { + "pageSize": { + "location": "query", + "format": "int32", + "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.", + "type": "integer" + }, "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", "type": "string", "required": true, - "pattern": "^folders/[^/]+$" + "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" }, "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", - "format": "int32", - "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.", - "type": "integer" + "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/folders/{foldersId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.folders.sinks.list", - "description": "Lists sinks.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListSinksResponse" - } - }, - "update": { + "flatPath": "v2/projects/{projectsId}/logs" + } + } + }, + "metrics": { + "methods": { + "delete": { "response": { - "$ref": "LogSink" + "$ref": "Empty" }, "parameterOrder": [ - "sinkName" + "metricName" ], - "httpMethod": "PUT", + "httpMethod": "DELETE", "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" ], "parameters": { - "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" - }, - "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\".", + "metricName": { + "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "type": "string", "required": true, - "pattern": "^folders/[^/]+/sinks/[^/]+$", + "pattern": "^projects/[^/]+/metrics/[^/]+$", "location": "path" } }, - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", - "id": "logging.folders.sinks.update", - "path": "v2/{+sinkName}", - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field." + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.delete", + "path": "v2/{+metricName}", + "description": "Deletes a logs-based metric." }, - "create": { + "get": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "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": "^folders/[^/]+$", + "parameters": { + "metricName": { + "pattern": "^projects/[^/]+/metrics/[^/]+$", "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\".", + "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "type": "string", "required": true - }, - "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/folders/{foldersId}/sinks", - "id": "logging.folders.sinks.create", - "path": "v2/{+parent}/sinks", - "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 current time is outside the sink's start and end times or 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.", + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.get", + "path": "v2/{+metricName}", + "description": "Gets a logs-based metric.", "response": { - "$ref": "LogSink" + "$ref": "LogMetric" }, + "httpMethod": "GET", "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - } - } - }, - "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.", - "httpMethod": "DELETE", + "metricName" + ] + }, + "list": { + "path": "v2/{+parent}/metrics", + "id": "logging.projects.metrics.list", + "description": "Lists logs-based metrics.", + "httpMethod": "GET", "parameterOrder": [ - "logName" + "parent" ], "response": { - "$ref": "Empty" - }, - "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.", - "type": "string", - "required": true, - "pattern": "^folders/[^/]+/logs/[^/]+$" - } + "$ref": "ListLogMetricsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "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/{logsId}", - "path": "v2/{+logName}", - "id": "logging.folders.logs.delete" - }, - "list": { "parameters": { "pageToken": { "location": "query", @@ -1933,98 +1934,135 @@ "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", + "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", "type": "string", "required": true, - "pattern": "^folders/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" } }, + "flatPath": "v2/projects/{projectsId}/metrics" + }, + "update": { + "request": { + "$ref": "LogMetric" + }, + "description": "Creates or updates a logs-based metric.", + "response": { + "$ref": "LogMetric" + }, + "parameterOrder": [ + "metricName" + ], + "httpMethod": "PUT", "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": "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.", - "httpMethod": "GET", - "response": { - "$ref": "ListLogsResponse" + "parameters": { + "metricName": { + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/metrics/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.update", + "path": "v2/{+metricName}" + }, + "create": { + "request": { + "$ref": "LogMetric" }, + "description": "Creates a logs-based metric.", + "httpMethod": "POST", "parameterOrder": [ "parent" - ] + ], + "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": { + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/metrics", + "path": "v2/{+parent}/metrics", + "id": "logging.projects.metrics.create" } } } } - }, - "monitoredResourceDescriptors": { - "methods": { - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "parameterOrder": [], - "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", - "format": "int32", - "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.", - "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": "v2/monitoredResourceDescriptors", - "path": "v2/monitoredResourceDescriptors", - "id": "logging.monitoredResourceDescriptors.list", - "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging." - } - } } }, "parameters": { - "upload_protocol": { + "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.", + "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": { "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query", + "description": "Pretty-print response." }, - "uploadType": { + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + }, + "oauth_token": { "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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.", + "default": "true", + "type": "boolean", + "location": "query" }, "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": { + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -2034,10 +2072,17 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "description": "V1 error format." + }, + "callback": { + "type": "string", + "location": "query", + "description": "JSONP" }, "alt": { + "location": "query", + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -2048,52 +2093,7 @@ "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": { - "default": "true", - "type": "boolean", - "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": "v2", - "baseUrl": "https://logging.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Writes log entries and manages your Stackdriver Logging configuration.", - "servicePath": "", - "basePath": "", - "revision": "20170710", - "documentationLink": "https://cloud.google.com/logging/docs/", - "id": "logging:v2", - "discoveryVersion": "v1", - "version_module": "True" + } } diff --git a/DiscoveryJson/logging_v2beta1.json b/DiscoveryJson/logging_v2beta1.json index 449956ef93..e55f3909bf 100644 --- a/DiscoveryJson/logging_v2beta1.json +++ b/DiscoveryJson/logging_v2beta1.json @@ -1,11 +1,79 @@ { + "baseUrl": "https://logging.googleapis.com/", + "servicePath": "", + "description": "Writes log entries and manages your Stackdriver Logging configuration.", + "kind": "discovery#restDescription", "basePath": "", - "revision": "20170710", - "documentationLink": "https://cloud.google.com/logging/docs/", "id": "logging:v2beta1", + "documentationLink": "https://cloud.google.com/logging/docs/", + "revision": "20170710", "discoveryVersion": "v1", "version_module": "True", "schemas": { + "ListLogEntriesResponse": { + "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.", + "items": { + "$ref": "LogEntry" + }, + "type": "array" + } + }, + "id": "ListLogEntriesResponse", + "description": "Result returned from ListLogEntries." + }, + "LogLine": { + "description": "Application log line emitted while processing a request.", + "type": "object", + "properties": { + "logMessage": { + "description": "App-provided log message.", + "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" + }, + "sourceLocation": { + "$ref": "SourceLocation", + "description": "Where in the source code this log message was written." + }, + "time": { + "format": "google-datetime", + "description": "Approximate time when this log entry was made.", + "type": "string" + } + }, + "id": "LogLine" + }, "ListLogMetricsResponse": { "description": "Result returned from ListLogMetrics.", "type": "object", @@ -24,43 +92,35 @@ }, "id": "ListLogMetricsResponse" }, + "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 {}." + }, "LogEntry": { "description": "An individual entry in a log.", "type": "object", "properties": { - "timestamp": { - "format": "google-datetime", - "description": "Optional. The time the event described by the log entry occurred. If omitted in a new log entry, Stackdriver Logging will insert the time the log entry is received. Stackdriver Logging might reject log entries whose time stamps are more than a couple of hours in the future. Log entries with time stamps in the past are accepted.", - "type": "string" - }, - "receiveTimestamp": { - "type": "string", - "format": "google-datetime", - "description": "Output only. The time the log entry was received by Stackdriver Logging." - }, - "logName": { - "type": "string", - "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]\"\n[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." - }, - "httpRequest": { - "description": "Optional. Information about the HTTP request associated with this log entry, if applicable.", - "$ref": "HttpRequest" - }, "resource": { "$ref": "MonitoredResource", "description": "Required. The 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": { - "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." + "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" + "$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 will insert its own unique identifier. The insert_id is used to order log entries that have the same timestamp value.", @@ -71,12 +131,16 @@ "type": "string" }, "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." + "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" + }, + "trace": { + "type": "string", + "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" }, "labels": { "additionalProperties": { @@ -85,10 +149,6 @@ "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" - }, "severity": { "enumDescriptions": [ "(0) The log entry has no assigned severity level.", @@ -116,27 +176,28 @@ "type": "string" }, "sourceLocation": { - "description": "Optional. Source code location information associated with the log entry, if any.", - "$ref": "LogEntrySourceLocation" + "$ref": "LogEntrySourceLocation", + "description": "Optional. Source code location information associated with the log entry, if any." + }, + "timestamp": { + "format": "google-datetime", + "description": "Optional. The time the event described by the log entry occurred. If omitted in a new log entry, Stackdriver Logging will insert the time the log entry is received. Stackdriver Logging might reject log entries whose time stamps are more than a couple of hours in the future. Log entries with time stamps in the past are accepted.", + "type": "string" + }, + "receiveTimestamp": { + "format": "google-datetime", + "description": "Output only. The time the log entry was received by Stackdriver Logging.", + "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]\"\n[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" } }, "id": "LogEntry" }, - "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": { - "line": { - "format": "int64", - "description": "Line within the source file.", - "type": "string" - }, "file": { "description": "Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", "type": "string" @@ -144,11 +205,20 @@ "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": { + "format": "int64", + "description": "Line within the source file.", + "type": "string" } }, - "id": "SourceLocation" + "id": "SourceLocation", + "description": "Specifies a location in a source code file.", + "type": "object" }, "ListLogEntriesRequest": { + "description": "The parameters to ListLogEntries.", + "type": "object", "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.", @@ -160,8 +230,8 @@ "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" + "type": "string", + "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." }, "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.", @@ -178,18 +248,33 @@ "type": "array" }, "filter": { - "type": "string", - "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." + "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" } }, - "id": "ListLogEntriesRequest", - "description": "The parameters to ListLogEntries.", - "type": "object" + "id": "ListLogEntriesRequest" }, "RequestLog": { "description": "Complete log information about a single HTTP request to an App Engine application.", "type": "object", "properties": { + "appEngineRelease": { + "description": "App Engine release version.", + "type": "string" + }, + "method": { + "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\".", + "type": "string" + }, + "cost": { + "format": "double", + "description": "An indication of the relative cost of serving this request.", + "type": "number" + }, + "instanceId": { + "description": "An identifier for the instance that handled the request.", + "type": "string" + }, "megaCycles": { "format": "int64", "description": "Number of CPU megacycles used to process request.", @@ -213,12 +298,12 @@ "type": "string" }, "userAgent": { - "description": "User agent that made the request.", - "type": "string" + "type": "string", + "description": "User agent that made the request." }, "wasLoadingRequest": { - "description": "Whether this was a loading request for the instance.", - "type": "boolean" + "type": "boolean", + "description": "Whether this was a loading request for the instance." }, "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.", @@ -237,20 +322,20 @@ "type": "string" }, "line": { + "description": "A list of log lines emitted by the application while serving this request.", "items": { "$ref": "LogLine" }, - "type": "array", - "description": "A list of log lines emitted by the application while serving this request." - }, - "referrer": { - "type": "string", - "description": "Referrer URL of request." + "type": "array" }, "taskQueueName": { "description": "Queue name of the request, in the case of an offline request.", "type": "string" }, + "referrer": { + "description": "Referrer URL of 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." @@ -264,13 +349,13 @@ "description": "HTTP response status code. Example: 200, 404.", "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": { + "type": "string", "format": "google-duration", - "description": "Time this request spent in the pending request queue.", + "description": "Time this request spent in the pending request queue." + }, + "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" }, "taskName": { @@ -286,17 +371,17 @@ "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.", "type": "integer" }, - "finished": { - "description": "Whether this request is finished or active.", - "type": "boolean" - }, "host": { - "type": "string", - "description": "Internet host and port number of the resource being requested." + "description": "Internet host and port number of the resource being requested.", + "type": "string" + }, + "finished": { + "type": "boolean", + "description": "Whether this request is finished or active." }, "httpVersion": { - "description": "HTTP version of request. Example: \"HTTP/1.1\".", - "type": "string" + "type": "string", + "description": "HTTP version of request. Example: \"HTTP/1.1\"." }, "startTime": { "format": "google-datetime", @@ -309,110 +394,66 @@ "type": "string" }, "ip": { - "type": "string", - "description": "Origin IP address." + "description": "Origin IP address.", + "type": "string" }, "appId": { "description": "Application that handled this request.", "type": "string" - }, - "appEngineRelease": { - "description": "App Engine release version.", - "type": "string" - }, - "method": { - "type": "string", - "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\"." - }, - "cost": { - "type": "number", - "format": "double", - "description": "An indication of the relative cost of serving this request." - }, - "instanceId": { - "description": "An identifier for the instance that handled the request.", - "type": "string" } }, "id": "RequestLog" }, "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.", "items": { "$ref": "MonitoredResourceDescriptor" }, "type": "array" - }, - "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", - "description": "Result returned from ListMonitoredResourceDescriptors.", - "type": "object" + "id": "ListMonitoredResourceDescriptorsResponse" }, "SourceReference": { "description": "A reference to a particular snapshot of the source tree used to build and deploy an application.", "type": "object", "properties": { - "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" - }, - "WriteLogEntriesResponse": { - "description": "Result returned from WriteLogEntries. empty", - "type": "object", - "properties": {}, - "id": "WriteLogEntriesResponse" - }, - "LogEntryOperation": { - "description": "Additional information about a potentially long-running operation with which a log entry is associated.", - "type": "object", - "properties": { - "id": { - "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", - "type": "string" - }, - "first": { - "description": "Optional. Set this to True if this is the first log entry in the operation.", - "type": "boolean" - }, - "producer": { - "type": "string", - "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\"." }, - "last": { - "description": "Optional. Set this to True if this is the last log entry in the operation.", - "type": "boolean" + "revisionId": { + "description": "The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", + "type": "string" } }, - "id": "LogEntryOperation" + "id": "SourceReference" }, "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.", "type": "object", "properties": { + "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" + }, "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" }, "description": { - "description": "Optional. A description of this metric, which is used in documentation.", - "type": "string" + "type": "string", + "description": "Optional. A description of this metric, which is used in documentation." }, "version": { - "description": "Output only. The API version that created or updated this metric. The version also dictates the syntax of the filter expression. When a value for this field is missing, the default value of V2 should be assumed.", - "type": "string", "enumDescriptions": [ "Stackdriver Logging API v2.", "Stackdriver Logging API v1." @@ -420,16 +461,43 @@ "enum": [ "V2", "V1" - ] - }, - "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.", + ], + "description": "Output only. The API version that created or updated this metric. The version also dictates the syntax of the filter expression. When a value for this field is missing, the default value of V2 should be assumed.", "type": "string" } }, "id": "LogMetric" }, - "MonitoredResource": { + "LogEntryOperation": { + "description": "Additional information about a potentially long-running operation with which a log entry is associated.", + "type": "object", + "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" + }, + "first": { + "description": "Optional. Set this to True if this is the first log entry in the operation.", + "type": "boolean" + }, + "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" + } + }, + "id": "LogEntryOperation" + }, + "WriteLogEntriesResponse": { + "description": "Result returned from WriteLogEntries. empty", + "type": "object", + "properties": {}, + "id": "WriteLogEntriesResponse" + }, + "MonitoredResource": { "properties": { "labels": { "additionalProperties": { @@ -448,8 +516,13 @@ "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.", "type": "object", "properties": { + "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" @@ -459,25 +532,24 @@ "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. The filter must use the log entry format specified by the output_version_format parameter. For example, in the v2 format:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", - "type": "string" + "type": "string", + "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. The filter must use the log entry format specified by the output_version_format parameter. For example, in the v2 format:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n" }, "endTime": { + "type": "string", "format": "google-datetime", - "description": "Optional. The time at which this sink will stop exporting log entries. Log entries are exported only if their timestamp is earlier than the end time. If this field is not supplied, there is no end time. If both a start time and an end time are provided, then the end time must be later than the start time.", - "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" + "description": "Optional. The time at which this sink will stop exporting log entries. Log entries are exported only if their timestamp is earlier than the end time. If this field is not supplied, there is no end time. If both a start time and an end time are provided, then the end time must be later than the start time." }, "startTime": { "format": "google-datetime", "description": "Optional. The time at which this sink will begin exporting log entries. Log entries are exported only if their timestamp is not earlier than the start time. The default value of this field is the time the sink is created or updated.", "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": { - "type": "string", "enumDescriptions": [ "An unspecified format version that will default to V2.", "LogEntry version 2 format.", @@ -488,50 +560,48 @@ "V2", "V1" ], - "description": "Optional. The log entry format to use for this sink's exported log entries. The v2 format is used by default. The v1 format is deprecated and should be used only as part of a migration effort to v2. See Migration to the v2 API." - }, - "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.", + "description": "Optional. The log entry format to use for this sink's exported log entries. The v2 format is used by default. The v1 format is deprecated and should be used only as part of a migration effort to v2. See Migration to the v2 API.", "type": "string" } }, - "id": "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." + "id": "LogSink" }, "WriteLogEntriesRequest": { - "id": "WriteLogEntriesRequest", - "description": "The parameters to WriteLogEntries.", "type": "object", "properties": { - "entries": { - "items": { - "$ref": "LogEntry" - }, - "type": "array", - "description": "Required. The log entries to write. Values supplied for the fields log_name, resource, and labels in this entries.write request are inserted into those log entries in this list that do not provide their own values.Stackdriver Logging also creates and inserts values for timestamp and insert_id if the entries do not provide them. The created insert_id for the N'th entry in this list will be greater than earlier entries and less than later entries. Otherwise, the order of log entries in this list does not matter.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should write multiple log entries at once rather than calling this method for each individual log entry." - }, - "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" - }, "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" }, "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": { "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" + }, + "entries": { + "description": "Required. The log entries to write. Values supplied for the fields log_name, resource, and labels in this entries.write request are inserted into those log entries in this list that do not provide their own values.Stackdriver Logging also creates and inserts values for timestamp and insert_id if the entries do not provide them. The created insert_id for the N'th entry in this list will be greater than earlier entries and less than later entries. Otherwise, the order of log entries in this list does not matter.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should write multiple log entries at once rather than calling this method for each individual log entry.", + "items": { + "$ref": "LogEntry" + }, + "type": "array" + }, + "logName": { + "type": "string", + "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." } - } + }, + "id": "WriteLogEntriesRequest", + "description": "The parameters to WriteLogEntries." }, "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.", @@ -545,9 +615,25 @@ "type": "array" } }, - "id": "ListLogsResponse", - "description": "Result returned from ListLogs.", - "type": "object" + "id": "ListLogsResponse" + }, + "ListSinksResponse": { + "description": "Result returned from ListSinks.", + "type": "object", + "properties": { + "sinks": { + "items": { + "$ref": "LogSink" + }, + "type": "array", + "description": "A list of sinks." + }, + "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" }, "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.", @@ -557,14 +643,14 @@ "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", "type": "string" }, - "responseSize": { + "requestSize": { "format": "int64", - "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", + "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", "type": "string" }, - "requestSize": { + "responseSize": { "format": "int64", - "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", + "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", "type": "string" }, "requestUrl": { @@ -610,33 +696,14 @@ "type": "string" }, "cacheFillBytes": { + "type": "string", "format": "int64", - "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", - "type": "string" + "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted." } }, "id": "HttpRequest" }, - "ListSinksResponse": { - "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" - }, - "sinks": { - "description": "A list of sinks.", - "items": { - "$ref": "LogSink" - }, - "type": "array" - } - }, - "id": "ListSinksResponse", - "description": "Result returned from ListSinks." - }, "LabelDescriptor": { - "type": "object", "properties": { "key": { "description": "The label key.", @@ -647,24 +714,26 @@ "type": "string" }, "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", - "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." - ] + "type": "string" } }, "id": "LabelDescriptor", - "description": "A description of a label." + "description": "A description of a label.", + "type": "object" }, "MonitoredResourceDescriptor": { + "id": "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": { @@ -676,8 +745,8 @@ "type": "array" }, "name": { - "type": "string", - "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}\"." + "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" }, "description": { "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", @@ -691,18 +760,13 @@ "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": { + "id": "LogEntrySourceLocation", "description": "Additional information about the source code location that produced the log entry.", "type": "object", "properties": { - "line": { - "format": "int64", - "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", - "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" @@ -710,78 +774,18 @@ "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" - } - }, - "id": "LogEntrySourceLocation" - }, - "ListLogEntriesResponse": { - "type": "object", - "properties": { - "entries": { - "description": "A list of log entries.", - "items": { - "$ref": "LogEntry" - }, - "type": "array" - }, - "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", - "description": "Result returned from ListLogEntries." - }, - "LogLine": { - "description": "Application log line emitted while processing a request.", - "type": "object", - "properties": { - "logMessage": { - "type": "string", - "description": "App-provided log message." - }, - "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" - ] - }, - "sourceLocation": { - "description": "Where in the source code this log message was written.", - "$ref": "SourceLocation" }, - "time": { - "format": "google-datetime", - "description": "Approximate time when this log entry was made.", + "line": { + "format": "int64", + "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", "type": "string" } - }, - "id": "LogLine" + } } }, "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": "Logging", @@ -813,11 +817,52 @@ "title": "Stackdriver Logging API", "ownerName": "Google", "resources": { - "billingAccounts": { + "monitoredResourceDescriptors": { + "methods": { + "list": { + "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging.", + "response": { + "$ref": "ListMonitoredResourceDescriptorsResponse" + }, + "parameterOrder": [], + "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": { + "type": "integer", + "location": "query", + "format": "int32", + "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." + } + }, + "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/monitoredResourceDescriptors", + "id": "logging.monitoredResourceDescriptors.list", + "path": "v2beta1/monitoredResourceDescriptors" + } + } + }, + "organizations": { "resources": { "logs": { "methods": { "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", @@ -825,153 +870,38 @@ "https://www.googleapis.com/auth/logging.read" ], "parameters": { + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "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." + }, "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", "type": "string", "required": true, - "pattern": "^billingAccounts/[^/]+$", + "pattern": "^organizations/[^/]+$", "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" - }, - "pageSize": { "location": "query", - "format": "int32", - "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.", - "type": "integer" - } - }, - "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs", - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListLogsResponse" - } - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "logName": { - "type": "string", - "required": true, - "pattern": "^billingAccounts/[^/]+/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." - } - }, - "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs/{logsId}", - "id": "logging.billingAccounts.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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ], - "httpMethod": "DELETE" - } - } - } - } - }, - "monitoredResourceDescriptors": { - "methods": { - "list": { - "flatPath": "v2beta1/monitoredResourceDescriptors", - "path": "v2beta1/monitoredResourceDescriptors", - "id": "logging.monitoredResourceDescriptors.list", - "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "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", - "format": "int32", - "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.", - "type": "integer" - } - } - } - } - }, - "organizations": { - "resources": { - "logs": { - "methods": { - "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" - }, - "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": { - "format": "int32", - "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.", - "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", - "type": "string", - "required": true + "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." } }, "flatPath": "v2beta1/organizations/{organizationsId}/logs", + "id": "logging.organizations.logs.list", "path": "v2beta1/{+parent}/logs", - "id": "logging.organizations.logs.list" + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." }, "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.", + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "logName" ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/logging.admin" @@ -986,8 +916,9 @@ } }, "flatPath": "v2beta1/organizations/{organizationsId}/logs/{logsId}", + "path": "v2beta1/{+logName}", "id": "logging.organizations.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." } } } @@ -996,134 +927,94 @@ "entries": { "methods": { "list": { - "path": "v2beta1/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" - }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "ListLogEntriesResponse" }, - "parameters": {}, + "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/logging.admin", "https://www.googleapis.com/auth/logging.read" ], - "flatPath": "v2beta1/entries:list" + "parameters": {}, + "flatPath": "v2beta1/entries:list", + "id": "logging.entries.list", + "path": "v2beta1/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", + "id": "logging.entries.write", "description": "Writes log entries to Stackdriver Logging.", "request": { "$ref": "WriteLogEntriesRequest" }, + "httpMethod": "POST", + "parameterOrder": [], "response": { "$ref": "WriteLogEntriesResponse" }, - "parameterOrder": [], - "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/logging.admin", "https://www.googleapis.com/auth/logging.write" ], - "flatPath": "v2beta1/entries:write", - "id": "logging.entries.write", - "path": "v2beta1/entries:write" + "flatPath": "v2beta1/entries:write" } } }, "projects": { "resources": { - "metrics": { + "sinks": { "methods": { "delete": { + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", "httpMethod": "DELETE", "parameterOrder": [ - "metricName" + "sinkName" ], "response": { "$ref": "Empty" }, - "parameters": { - "metricName": { - "location": "path", - "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", - "type": "string", - "required": true, - "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": "v2beta1/projects/{projectsId}/metrics/{metricsId}", - "path": "v2beta1/{+metricName}", - "id": "logging.projects.metrics.delete", - "description": "Deletes a logs-based metric." - }, - "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" + "https://www.googleapis.com/auth/logging.admin" ], "parameters": { - "metricName": { + "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\".", "type": "string", "required": true, - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path", - "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n" + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" } }, - "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", - "path": "v2beta1/{+metricName}", - "id": "logging.projects.metrics.get", - "description": "Gets a logs-based metric.", - "httpMethod": "GET", + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", + "path": "v2beta1/{+sinkName}", + "id": "logging.projects.sinks.delete" + }, + "get": { + "description": "Gets a sink.", "response": { - "$ref": "LogMetric" + "$ref": "LogSink" }, "parameterOrder": [ - "metricName" - ] - }, - "list": { - "description": "Lists logs-based metrics.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" + "sinkName" ], - "response": { - "$ref": "ListLogMetricsResponse" - }, + "httpMethod": "GET", "parameters": { - "parent": { - "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", + "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\".", "type": "string", "required": true, - "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", - "format": "int32", - "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.", - "type": "integer" + "pattern": "^projects/[^/]+/sinks/[^/]+$" } }, "scopes": [ @@ -1132,184 +1023,275 @@ "https://www.googleapis.com/auth/logging.admin", "https://www.googleapis.com/auth/logging.read" ], - "flatPath": "v2beta1/projects/{projectsId}/metrics", - "path": "v2beta1/{+parent}/metrics", - "id": "logging.projects.metrics.list" + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", + "id": "logging.projects.sinks.get", + "path": "v2beta1/{+sinkName}" }, - "update": { - "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", - "id": "logging.projects.metrics.update", - "path": "v2beta1/{+metricName}", - "request": { - "$ref": "LogMetric" - }, - "description": "Creates or updates a logs-based metric.", + "list": { + "description": "Lists sinks.", "response": { - "$ref": "LogMetric" + "$ref": "ListSinksResponse" }, "parameterOrder": [ - "metricName" + "parent" ], - "httpMethod": "PUT", + "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.write" + "https://www.googleapis.com/auth/logging.read" ], "parameters": { - "metricName": { + "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", + "format": "int32", + "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.", + "type": "integer" + }, + "parent": { "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.", + "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", "type": "string", "required": true, - "pattern": "^projects/[^/]+/metrics/[^/]+$" + "pattern": "^projects/[^/]+$" } - } + }, + "flatPath": "v2beta1/projects/{projectsId}/sinks", + "id": "logging.projects.sinks.list", + "path": "v2beta1/{+parent}/sinks" }, - "create": { + "update": { + "path": "v2beta1/{+sinkName}", + "id": "logging.projects.sinks.update", + "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field.", + "request": { + "$ref": "LogSink" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, "parameters": { - "parent": { - "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.", + "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" + }, + "sinkName": { "type": "string", "required": true, - "pattern": "^projects/[^/]+$" + "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\"." } }, "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" ], - "flatPath": "v2beta1/projects/{projectsId}/metrics", - "id": "logging.projects.metrics.create", - "path": "v2beta1/{+parent}/metrics", - "description": "Creates a logs-based metric.", + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}" + }, + "create": { + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the current time is outside the sink's start and end times or 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": "LogMetric" + "$ref": "LogSink" }, "response": { - "$ref": "LogMetric" + "$ref": "LogSink" }, "parameterOrder": [ "parent" ], - "httpMethod": "POST" + "httpMethod": "POST", + "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\".", + "type": "string", + "required": true, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2beta1/projects/{projectsId}/sinks", + "id": "logging.projects.sinks.create", + "path": "v2beta1/{+parent}/sinks" } } }, - "sinks": { + "logs": { "methods": { - "update": { - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. If the named sink doesn't exist, then this method is identical to sinks.create. If the named sink does exist, then this method replaces the following fields in the existing sink with values from the new sink: destination, filter, output_version_format, start_time, and end_time. The updated filter might also have a new writer_identity; see the unique_writer_identity field.", + "delete": { "response": { - "$ref": "LogSink" + "$ref": "Empty" }, "parameterOrder": [ - "sinkName" + "logName" ], - "httpMethod": "PUT", + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/logs/[^/]+$", + "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." + }, + "list": { + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListLogsResponse" + }, + "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": { - "uniqueWriterIdentity": { + "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.", - "type": "boolean" + "format": "int32", + "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.", + "type": "integer" }, - "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\".", + "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", "type": "string", "required": true, - "pattern": "^projects/[^/]+/sinks/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "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." } }, - "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", - "id": "logging.projects.sinks.update", - "path": "v2beta1/{+sinkName}" - }, - "create": { - "path": "v2beta1/{+parent}/sinks", - "id": "logging.projects.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 current time is outside the sink's start and end times or 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" + "flatPath": "v2beta1/projects/{projectsId}/logs" + } + } + }, + "metrics": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" }, - "httpMethod": "POST", "parameterOrder": [ - "parent" + "metricName" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" ], - "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": { + "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", + "pattern": "^projects/[^/]+/metrics/[^/]+$", "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" } }, - "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.delete", + "description": "Deletes a logs-based metric." }, - "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.", + "get": { + "description": "Gets a logs-based metric.", "response": { - "$ref": "Empty" + "$ref": "LogMetric" }, "parameterOrder": [ - "sinkName" + "metricName" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "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 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": { + "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "type": "string", "required": true, - "pattern": "^projects/[^/]+/sinks/[^/]+$" + "pattern": "^projects/[^/]+/metrics/[^/]+$", + "location": "path" } }, - "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}" + "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.get", + "path": "v2beta1/{+metricName}" }, - "get": { - "description": "Gets a sink.", - "httpMethod": "GET", + "list": { + "flatPath": "v2beta1/projects/{projectsId}/metrics", + "id": "logging.projects.metrics.list", + "path": "v2beta1/{+parent}/metrics", + "description": "Lists logs-based metrics.", "response": { - "$ref": "LogSink" + "$ref": "ListLogMetricsResponse" }, "parameterOrder": [ - "sinkName" + "parent" ], + "httpMethod": "GET", "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\".", + "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", - "required": true + "location": "query" + }, + "pageSize": { + "format": "int32", + "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.", + "type": "integer", + "location": "query" + }, + "parent": { + "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" } }, "scopes": [ @@ -1317,102 +1299,117 @@ "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}/sinks/{sinksId}", - "path": "v2beta1/{+sinkName}", - "id": "logging.projects.sinks.get" + ] }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListSinksResponse" + "update": { + "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.", + "type": "string", + "required": true + } }, "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}/metrics/{metricsId}", + "id": "logging.projects.metrics.update", + "path": "v2beta1/{+metricName}", + "description": "Creates or updates a logs-based metric.", + "request": { + "$ref": "LogMetric" + }, + "response": { + "$ref": "LogMetric" + }, + "parameterOrder": [ + "metricName" + ], + "httpMethod": "PUT" + }, + "create": { + "flatPath": "v2beta1/projects/{projectsId}/metrics", + "id": "logging.projects.metrics.create", + "path": "v2beta1/{+parent}/metrics", + "description": "Creates a logs-based metric.", + "request": { + "$ref": "LogMetric" + }, + "response": { + "$ref": "LogMetric" + }, + "parameterOrder": [ + "parent" ], + "httpMethod": "POST", "parameters": { "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.", "type": "string", "required": true - }, - "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", - "format": "int32", - "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.", - "type": "integer" } }, - "flatPath": "v2beta1/projects/{projectsId}/sinks", - "path": "v2beta1/{+parent}/sinks", - "id": "logging.projects.sinks.list", - "description": "Lists sinks." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ] } } - }, + } + } + }, + "billingAccounts": { + "resources": { "logs": { "methods": { "delete": { - "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.", - "response": { - "$ref": "Empty" - }, + "httpMethod": "DELETE", "parameterOrder": [ "logName" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/logs/[^/]+$", - "location": "path" + "pattern": "^billingAccounts/[^/]+/logs/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/logging.admin" - ] + ], + "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs/{logsId}", + "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." }, "list": { - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", - "response": { - "$ref": "ListLogsResponse" - }, + "httpMethod": "GET", "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" - ], + "response": { + "$ref": "ListLogsResponse" + }, "parameters": { "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", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^billingAccounts/[^/]+$" }, "pageToken": { "location": "query", @@ -1420,15 +1417,22 @@ "type": "string" }, "pageSize": { + "location": "query", "format": "int32", "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.", - "type": "integer", - "location": "query" + "type": "integer" } }, - "flatPath": "v2beta1/projects/{projectsId}/logs", - "id": "logging.projects.logs.list", - "path": "v2beta1/{+parent}/logs" + "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/billingAccounts/{billingAccountsId}/logs", + "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." } } } @@ -1437,45 +1441,50 @@ }, "parameters": { "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": { - "default": "true", - "type": "boolean", "location": "query", - "description": "Returns response with indentations and line breaks." + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, "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" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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" + ] + }, + "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", @@ -1484,12 +1493,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" - ] + "type": "string" }, "key": { "location": "query", @@ -1502,9 +1506,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": { "location": "query", @@ -1523,9 +1527,5 @@ "type": "string" } }, - "version": "v2beta1", - "baseUrl": "https://logging.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Writes log entries and manages your Stackdriver Logging configuration." + "version": "v2beta1" } diff --git a/DiscoveryJson/manufacturers_v1.json b/DiscoveryJson/manufacturers_v1.json index 50ada8a453..29e12489a6 100644 --- a/DiscoveryJson/manufacturers_v1.json +++ b/DiscoveryJson/manufacturers_v1.json @@ -1,7 +1,330 @@ { + "resources": { + "accounts": { + "resources": { + "products": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "parent", + "name" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/manufacturercenter" + ], + "parameters": { + "name": { + "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.", + "type": "string", + "required": true, + "pattern": "^[^/]+$" + }, + "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.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/accounts/{accountsId}/products/{productsId}", + "path": "v1/{+parent}/products/{+name}", + "id": "manufacturers.accounts.products.delete", + "description": "Deletes the product from a Manufacturer Center account." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "parent", + "name" + ], + "response": { + "$ref": "Product" + }, + "parameters": { + "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.", + "type": "string", + "required": true + }, + "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.", + "type": "string", + "required": true + } + }, + "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 some time to be processed before any\nchanges are visible. While some issues may be available once the product\nhas been processed, other issues may take days to appear." + }, + "list": { + "flatPath": "v1/accounts/{accountsId}/products", + "path": "v1/{+parent}/products", + "id": "manufacturers.accounts.products.list", + "description": "Lists all the products in a Manufacturer Center account.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListProductsResponse" + }, + "parameters": { + "pageToken": { + "description": "The token returned by the previous request.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum number of product statuses to return in the response, used for\npaging.", + "type": "integer" + }, + "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.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/manufacturercenter" + ] + }, + "update": { + "description": "Inserts or updates the product in a Manufacturer Center account.\n\nThe checks at upload time are minimal. All required attributes need to be\npresent for a product to be valid. Issues may show up later\nafter the API has accepted an update for a product and it is possible to\noverwrite an existing valid product with an invalid product. To detect\nthis, you should retrieve the product and check it for issues once the\nupdated version is available.\n\nInserted or updated products first need to be processed before they can be\nretrieved. Until then, new products will be unavailable, and retrieval\nof updated products will return the original state of the product.", + "request": { + "$ref": "Product" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "parent", + "name" + ], + "response": { + "$ref": "Product" + }, + "parameters": { + "parent": { + "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", + "type": "string", + "required": true, + "pattern": "^accounts/[^/]+$", + "location": "path" + }, + "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", + "required": true, + "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.update" + } + } + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "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": { + "default": "true", + "type": "boolean", + "location": "query", + "description": "Pretty-print response." + }, + "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://manufacturers.googleapis.com/", + "description": "Public API for managing Manufacturer Center related data.", + "servicePath": "", + "kind": "discovery#restDescription", + "basePath": "", + "revision": "20170703", + "documentationLink": "https://developers.google.com/manufacturers/", + "id": "manufacturers:v1", "discoveryVersion": "v1", "version_module": "True", "schemas": { + "ProductDetail": { + "description": "A product detail of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productdetail.", + "type": "object", + "properties": { + "attributeName": { + "description": "The name of the attribute.", + "type": "string" + }, + "attributeValue": { + "description": "The value of the attribute.", + "type": "string" + }, + "sectionName": { + "description": "A short section name that can be reused between multiple product details.", + "type": "string" + } + }, + "id": "ProductDetail" + }, + "FeatureDescription": { + "description": "A feature description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", + "type": "object", + "properties": { + "image": { + "$ref": "Image", + "description": "An optional image describing the feature." + }, + "headline": { + "description": "A short description of the feature.", + "type": "string" + }, + "text": { + "description": "A detailed description of the feature.", + "type": "string" + } + }, + "id": "FeatureDescription" + }, + "Issue": { + "description": "Product issue.", + "type": "object", + "properties": { + "timestamp": { + "type": "string", + "format": "google-datetime", + "description": "The timestamp when this issue appeared." + }, + "severity": { + "enum": [ + "SEVERITY_UNSPECIFIED", + "ERROR", + "WARNING", + "INFO" + ], + "description": "The severity of the issue.", + "type": "string", + "enumDescriptions": [ + "Unspecified severity, never used.", + "Error severity. The issue prevents the usage of the whole item.", + "Warning severity. The issue is either one that prevents the usage of the\nattribute that triggered it or one that will soon prevent the usage of\nthe whole item.", + "Info severity. The issue is one that doesn't require immediate attention.\nIt is, for example, used to communicate which attributes are still\npending review." + ] + }, + "description": { + "type": "string", + "description": "Description 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": { + "description": "If present, the attribute that triggered the issue. For more information\nabout attributes, see\nhttps://support.google.com/manufacturers/answer/6124116.", + "type": "string" + } + }, + "id": "Issue" + }, "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", @@ -12,21 +335,38 @@ "description": "A price.", "type": "object", "properties": { - "amount": { - "description": "The numeric value of the price.", - "type": "string" - }, "currency": { "description": "The currency in which the price is denoted.", "type": "string" + }, + "amount": { + "type": "string", + "description": "The numeric value of the price." } }, "id": "Price" }, "Image": { - "description": "An image.", "type": "object", "properties": { + "type": { + "enumDescriptions": [ + "Type is unspecified. Should not be used.", + "The image was crawled from a provided URL.", + "The image was uploaded." + ], + "enum": [ + "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" + }, "status": { "enumDescriptions": [ "Status is unspecified. Should not be used.", @@ -56,50 +396,68 @@ ], "description": "The status of the image.\n@OutputOnly", "type": "string" - }, - "type": { - "enumDescriptions": [ - "Type is unspecified. Should not be used.", - "The image was crawled from a provided URL.", - "The image was uploaded." - ], - "enum": [ - "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" + "id": "Image", + "description": "An image." }, "Attributes": { "description": "Attributes of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116.", "type": "object", "properties": { - "brand": { - "description": "The brand name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#brand.", + "color": { + "description": "The color of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#color.", "type": "string" }, - "disclosureDate": { - "description": "The disclosure date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#disclosure.", + "productName": { + "description": "The canonical name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productname.", + "type": "string" + }, + "sizeType": { + "description": "The size type of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#sizetype.", + "type": "string" + }, + "suggestedRetailPrice": { + "$ref": "Price", + "description": "The suggested retail price (MSRP) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#price." + }, + "featureDescription": { + "items": { + "$ref": "FeatureDescription" + }, + "type": "array", + "description": "The rich format description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc." + }, + "size": { + "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" + }, + "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.", "type": "string" }, "material": { "description": "The material of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#material.", "type": "string" }, + "disclosureDate": { + "type": "string", + "description": "The disclosure date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#disclosure." + }, "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.", + "flavor": { + "description": "The flavor of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#flavor.", "type": "string" }, "productDetail": { @@ -109,18 +467,18 @@ }, "type": "array" }, - "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" + "ageGroup": { + "type": "string", + "description": "The target age group of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#agegroup." }, "mpn": { "description": "The Manufacturer Part Number (MPN) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#mpn.", "type": "string" }, + "productPageUrl": { + "type": "string", + "description": "The URL of the detail page of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productpage." + }, "releaseDate": { "description": "The release date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#release.", "type": "string" @@ -153,8 +511,8 @@ "type": "string" }, "sizeSystem": { - "description": "The size system of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#sizesystem.", - "type": "string" + "type": "string", + "description": "The size system of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#sizesystem." }, "theme": { "description": "The theme of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#theme.", @@ -165,15 +523,15 @@ "type": "string" }, "imageLink": { - "description": "The image of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#image.", - "$ref": "Image" + "$ref": "Image", + "description": "The image of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#image." }, "productType": { - "description": "The category of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#producttype.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "The category of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#producttype." }, "format": { "description": "The format of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#format.", @@ -192,41 +550,6 @@ "type": "string" }, "type": "array" - }, - "color": { - "description": "The color of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#color.", - "type": "string" - }, - "productName": { - "description": "The canonical name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productname.", - "type": "string" - }, - "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" - }, - "featureDescription": { - "description": "The rich format description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", - "items": { - "$ref": "FeatureDescription" - }, - "type": "array" - }, - "size": { - "description": "The size of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#size.", - "type": "string" - }, - "title": { - "description": "The title of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#title.", - "type": "string" - }, - "count": { - "$ref": "Count", - "description": "The count of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#count." } }, "id": "Attributes" @@ -251,6 +574,28 @@ "description": "Product data.", "type": "object", "properties": { + "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.\n@OutputOnly", + "type": "string" + }, + "issues": { + "description": "A server-generated list of issues associated with the product.\n@OutputOnly", + "items": { + "$ref": "Issue" + }, + "type": "array" + }, + "manuallyDeletedAttributes": { + "description": "Names of the attributes of the product deleted manually via the\nManufacturer Center UI.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" + }, + "finalAttributes": { + "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@OutputOnly", + "$ref": "Attributes" + }, "productId": { "description": "The ID of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#id.\n@OutputOnly", "type": "string" @@ -264,8 +609,8 @@ "type": "string" }, "manuallyProvidedAttributes": { - "description": "Attributes of the product provided manually via the Manufacturer Center UI.\n@OutputOnly", - "$ref": "Attributes" + "$ref": "Attributes", + "description": "Attributes of the product provided manually via the Manufacturer Center UI.\n@OutputOnly" }, "targetCountry": { "description": "The target country of the product as a CLDR territory code (for example,\nUS).\n@OutputOnly", @@ -274,147 +619,47 @@ "contentLanguage": { "description": "The content language of the product as a two-letter ISO 639-1 language code\n(for example, en).\n@OutputOnly", "type": "string" - }, - "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.\n@OutputOnly", - "type": "string" - }, - "manuallyDeletedAttributes": { - "description": "Names of the attributes of the product deleted manually via the\nManufacturer Center UI.\n@OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "issues": { - "description": "A server-generated list of issues associated with the product.\n@OutputOnly", - "items": { - "$ref": "Issue" - }, - "type": "array" - }, - "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@OutputOnly" } }, "id": "Product" }, "Capacity": { - "description": "The capacity of a product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#capacity.", - "type": "object", "properties": { "unit": { - "description": "The unit of the capacity, i.e., MB, GB, or TB.", - "type": "string" - }, - "value": { - "format": "int64", - "description": "The numeric value of the capacity.", - "type": "string" - } - }, - "id": "Capacity" - }, - "ListProductsResponse": { - "type": "object", - "properties": { - "products": { - "description": "List of the products.", - "items": { - "$ref": "Product" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The token for the retrieval of the next page of product statuses.", - "type": "string" - } - }, - "id": "ListProductsResponse" - }, - "ProductDetail": { - "description": "A product detail of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productdetail.", - "type": "object", - "properties": { - "sectionName": { - "description": "A short section name that can be reused between multiple product details.", - "type": "string" - }, - "attributeName": { - "description": "The name of the attribute.", - "type": "string" - }, - "attributeValue": { - "description": "The value of the attribute.", - "type": "string" - } - }, - "id": "ProductDetail" - }, - "Issue": { - "description": "Product issue.", - "type": "object", - "properties": { - "timestamp": { - "format": "google-datetime", - "description": "The timestamp when this issue appeared.", - "type": "string" - }, - "severity": { - "description": "The severity of the issue.", "type": "string", - "enumDescriptions": [ - "Unspecified severity, never used.", - "Error severity. The issue prevents the usage of the whole item.", - "Warning severity. The issue is either one that prevents the usage of the\nattribute that triggered it or one that will soon prevent the usage of\nthe whole item.", - "Info severity. The issue is one that doesn't require immediate attention.\nIt is, for example, used to communicate which attributes are still\npending review." - ], - "enum": [ - "SEVERITY_UNSPECIFIED", - "ERROR", - "WARNING", - "INFO" - ] - }, - "description": { - "description": "Description of the issue.", - "type": "string" - }, - "type": { - "description": "The server-generated type of the issue, for example,\n“INCORRECT_TEXT_FORMATTING”, “IMAGE_NOT_SERVEABLE”, etc.", - "type": "string" + "description": "The unit of the capacity, i.e., MB, GB, or TB." }, - "attribute": { - "description": "If present, the attribute that triggered the issue. For more information\nabout attributes, see\nhttps://support.google.com/manufacturers/answer/6124116.", + "value": { + "format": "int64", + "description": "The numeric value of the capacity.", "type": "string" } }, - "id": "Issue" + "id": "Capacity", + "description": "The capacity of a product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#capacity.", + "type": "object" }, - "FeatureDescription": { - "description": "A feature description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", - "type": "object", + "ListProductsResponse": { "properties": { - "text": { - "description": "A detailed description of the feature.", + "nextPageToken": { + "description": "The token for the retrieval of the next page of product statuses.", "type": "string" }, - "image": { - "description": "An optional image describing the feature.", - "$ref": "Image" - }, - "headline": { - "description": "A short description of the feature.", - "type": "string" + "products": { + "items": { + "$ref": "Product" + }, + "type": "array", + "description": "List of the products." } }, - "id": "FeatureDescription" + "id": "ListProductsResponse", + "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": "Manufacturer Center", @@ -432,250 +677,5 @@ "name": "manufacturers", "batchPath": "batch", "title": "Manufacturer Center API", - "ownerName": "Google", - "resources": { - "accounts": { - "resources": { - "products": { - "methods": { - "get": { - "description": "Gets the product from a Manufacturer Center account, including product\nissues.\n\nA recently updated product takes some time to be processed before any\nchanges are visible. While some issues may be available once the product\nhas been processed, other issues may take days to appear.", - "httpMethod": "GET", - "response": { - "$ref": "Product" - }, - "parameterOrder": [ - "parent", - "name" - ], - "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.", - "type": "string", - "required": true, - "pattern": "^[^/]+$", - "location": "path" - }, - "parent": { - "location": "path", - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", - "type": "string", - "required": true, - "pattern": "^accounts/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/manufacturercenter" - ], - "flatPath": "v1/accounts/{accountsId}/products/{productsId}", - "path": "v1/{+parent}/products/{+name}", - "id": "manufacturers.accounts.products.get" - }, - "list": { - "flatPath": "v1/accounts/{accountsId}/products", - "path": "v1/{+parent}/products", - "id": "manufacturers.accounts.products.list", - "description": "Lists all the products in a Manufacturer Center account.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListProductsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/manufacturercenter" - ], - "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Maximum number of product statuses to return in the response, used for\npaging.", - "type": "integer" - }, - "parent": { - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", - "type": "string", - "required": true, - "pattern": "^accounts/[^/]+$", - "location": "path" - }, - "pageToken": { - "description": "The token returned by the previous request.", - "type": "string", - "location": "query" - } - } - }, - "update": { - "flatPath": "v1/accounts/{accountsId}/products/{productsId}", - "id": "manufacturers.accounts.products.update", - "path": "v1/{+parent}/products/{+name}", - "description": "Inserts or updates the product in a Manufacturer Center account.\n\nThe checks at upload time are minimal. All required attributes need to be\npresent for a product to be valid. Issues may show up later\nafter the API has accepted an update for a product and it is possible to\noverwrite an existing valid product with an invalid product. To detect\nthis, you should retrieve the product and check it for issues once the\nupdated version is available.\n\nInserted or updated products first need to be processed before they can be\nretrieved. Until then, new products will be unavailable, and retrieval\nof updated products will return the original state of the product.", - "request": { - "$ref": "Product" - }, - "response": { - "$ref": "Product" - }, - "parameterOrder": [ - "parent", - "name" - ], - "httpMethod": "PUT", - "parameters": { - "parent": { - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", - "type": "string", - "required": true, - "pattern": "^accounts/[^/]+$", - "location": "path" - }, - "name": { - "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.", - "type": "string", - "required": true, - "pattern": "^[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/manufacturercenter" - ] - }, - "delete": { - "description": "Deletes the product from a Manufacturer Center account.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "parent", - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/manufacturercenter" - ], - "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.", - "type": "string", - "required": true, - "pattern": "^[^/]+$", - "location": "path" - }, - "parent": { - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", - "type": "string", - "required": true, - "pattern": "^accounts/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/accounts/{accountsId}/products/{productsId}", - "id": "manufacturers.accounts.products.delete", - "path": "v1/{+parent}/products/{+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": { - "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.", - "default": "true", - "type": "boolean" - }, - "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.", - "default": "true", - "type": "boolean" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://manufacturers.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Public API for managing Manufacturer Center related data.", - "servicePath": "", - "basePath": "", - "documentationLink": "https://developers.google.com/manufacturers/", - "id": "manufacturers:v1", - "revision": "20170703" + "ownerName": "Google" } diff --git a/DiscoveryJson/ml_v1.json b/DiscoveryJson/ml_v1.json index 760d342a4c..20a5550cf0 100644 --- a/DiscoveryJson/ml_v1.json +++ b/DiscoveryJson/ml_v1.json @@ -3,75 +3,97 @@ "resources": { "projects": { "methods": { - "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 persmissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.", + "predict": { + "flatPath": "v1/projects/{projectsId}:predict", + "id": "ml.projects.predict", + "path": "v1/{+name}:predict", + "request": { + "$ref": "GoogleCloudMlV1__PredictRequest" + }, + "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION", "response": { - "$ref": "GoogleCloudMlV1__GetConfigResponse" + "$ref": "GoogleApi__HttpBody" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "description": "Required. The project name.", + "location": "path", + "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/.+$" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + } }, - "predict": { + "getConfig": { + "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account persmissions 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": "GoogleApi__HttpBody" + "$ref": "GoogleCloudMlV1__GetConfigResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "pattern": "^projects/.+$", + "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.", + "description": "Required. The project name.", "type": "string", "required": true } }, - "flatPath": "v1/projects/{projectsId}:predict", - "id": "ml.projects.predict", - "path": "v1/{+name}:predict", - "request": { - "$ref": "GoogleCloudMlV1__PredictRequest" - }, - "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION" + "flatPath": "v1/projects/{projectsId}:getConfig", + "path": "v1/{+name}:getConfig", + "id": "ml.projects.getConfig" } }, "resources": { "models": { "methods": { - "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).", + "getIamPolicy": { + "flatPath": "v1/projects/{projectsId}/models/{modelsId}:getIamPolicy", + "id": "ml.projects.models.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.", "response": { - "$ref": "GoogleLongrunning__Operation" + "$ref": "GoogleIamV1__Policy" }, "parameterOrder": [ - "name" + "resource" ], - "httpMethod": "DELETE", + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "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": { "location": "path", @@ -81,21 +103,75 @@ "pattern": "^projects/[^/]+/models/[^/]+$" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/models/{modelsId}", - "id": "ml.projects.models.delete", + "id": "ml.projects.models.get", "path": "v1/{+name}" }, - "list": { - "id": "ml.projects.models.list", - "path": "v1/{+parent}/models", - "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.", + "testIamPermissions": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "resource": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "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/{projectsId}/models/{modelsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "ml.projects.models.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.", + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], "response": { - "$ref": "GoogleCloudMlV1__ListModelsResponse" + "$ref": "GoogleIamV1__TestIamPermissionsResponse" + } + }, + "delete": { + "flatPath": "v1/projects/{projectsId}/models/{modelsId}", + "path": "v1/{+name}", + "id": "ml.projects.models.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" + }, + "parameters": { + "name": { + "description": "Required. The name of the model.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.", + "httpMethod": "GET", "parameterOrder": [ "parent" ], - "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudMlV1__ListModelsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -108,9 +184,9 @@ "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" + "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." }, "pageSize": { "format": "int32", @@ -119,16 +195,11 @@ "location": "query" } }, - "flatPath": "v1/projects/{projectsId}/models" - }, - "create": { "flatPath": "v1/projects/{projectsId}/models", "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" - }, + "id": "ml.projects.models.list" + }, + "create": { "httpMethod": "POST", "parameterOrder": [ "parent" @@ -138,16 +209,23 @@ }, "parameters": { "parent": { + "description": "Required. The project name.", "type": "string", "required": true, "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project name." + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1/projects/{projectsId}/models", + "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" + } }, "setIamPolicy": { "response": { @@ -176,160 +254,62 @@ "$ref": "GoogleIamV1__SetIamPolicyRequest" }, "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." - }, - "getIamPolicy": { - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}:getIamPolicy", - "id": "ml.projects.models.getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - }, - "get": { - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}", - "id": "ml.projects.models.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": "GoogleIamV1__TestIamPermissionsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "GoogleIamV1__TestIamPermissionsResponse" - }, - "parameters": { - "resource": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$", - "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": "v1/projects/{projectsId}/models/{modelsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "ml.projects.models.testIamPermissions" } }, "resources": { "versions": { "methods": { - "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.", + "get": { "response": { - "$ref": "GoogleLongrunning__Operation" + "$ref": "GoogleCloudMlV1__Version" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "GET", "parameters": { "name": { - "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).", + "description": "Required. The name of the version.", "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "id": "ml.projects.models.versions.delete", - "path": "v1/{+name}" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudMlV1__Version" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { + "required": true, "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path", - "description": "Required. The name of the version.", - "type": "string", - "required": true + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "path": "v1/{+name}", "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." }, "list": { + "id": "ml.projects.models.versions.list", + "path": "v1/{+parent}/versions", "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has a lot of 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):", - "httpMethod": "GET", "response": { "$ref": "GoogleCloudMlV1__ListVersionsResponse" }, "parameterOrder": [ "parent" ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { + "pattern": "^projects/[^/]+/models/[^/]+$", "location": "path", "description": "Required. The name of the model for which to list the version.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$" + "required": true }, "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", - "location": "query" + "type": "string" }, "pageSize": { "location": "query", @@ -338,27 +318,16 @@ "type": "integer" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions", - "path": "v1/{+parent}/versions", - "id": "ml.projects.models.versions.list" + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions" }, "create": { - "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" + "response": { + "$ref": "GoogleLongrunning__Operation" }, - "httpMethod": "POST", "parameterOrder": [ "parent" ], - "response": { - "$ref": "GoogleLongrunning__Operation" - }, + "httpMethod": "POST", "parameters": { "parent": { "location": "path", @@ -371,15 +340,19 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions" + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions", + "id": "ml.projects.models.versions.create", + "path": "v1/{+parent}/versions", + "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" + } }, "setDefault": { - "path": "v1/{+name}:setDefault", - "id": "ml.projects.models.versions.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" }, - "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.", "httpMethod": "POST", "parameterOrder": [ "name" @@ -387,19 +360,46 @@ "response": { "$ref": "GoogleCloudMlV1__Version" }, + "parameters": { + "name": { + "location": "path", + "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).\n\nAuthorization: `ml.models.update` permission is required on the parent model.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault", + "path": "v1/{+name}:setDefault", + "id": "ml.projects.models.versions.setDefault" + }, + "delete": { + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "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).", "type": "string", "required": true, "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path", - "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).\n\nAuthorization: `ml.models.update` permission is required on the parent model." + "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault" + "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." } } } @@ -408,14 +408,13 @@ "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" - }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "response": { + "$ref": "GoogleProtobuf__Empty" + }, "parameters": { "name": { "location": "path", @@ -429,10 +428,19 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", "id": "ml.projects.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`.", + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "parameters": { "name": { "description": "The name of the operation resource to be deleted.", @@ -447,59 +455,55 @@ ], "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", "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`.", - "response": { - "$ref": "GoogleProtobuf__Empty" - }, + "path": "v1/{+name}" + }, + "get": { + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "DELETE" - }, - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { "name": { - "description": "The name of the operation resource.", "type": "string", "required": true, "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path" + "location": "path", + "description": "The name of the operation resource." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", + "path": "v1/{+name}", "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." }, "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": "GoogleLongrunning__ListOperationsResponse" }, - "parameterOrder": [ - "name" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { "filter": { - "location": "query", "description": "The standard list filter.", - "type": "string" + "type": "string", + "location": "query" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "name": { "location": "path", @@ -509,64 +513,21 @@ "pattern": "^projects/[^/]+$" }, "pageSize": { + "type": "integer", "location": "query", "format": "int32", - "description": "The standard list page size.", - "type": "integer" + "description": "The standard list page size." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1/projects/{projectsId}/operations", - "id": "ml.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." + "id": "ml.projects.operations.list" } } }, "jobs": { "methods": { - "create": { - "path": "v1/{+parent}/jobs", - "id": "ml.projects.jobs.create", - "request": { - "$ref": "GoogleCloudMlV1__Job" - }, - "description": "Creates a training or a batch prediction job.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudMlV1__Job" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project name.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/jobs" - }, "cancel": { - "description": "Cancels a running job.", - "request": { - "$ref": "GoogleCloudMlV1__CancelJobRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobuf__Empty" - }, "parameters": { "name": { "description": "Required. The name of the job to cancel.", @@ -581,19 +542,30 @@ ], "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:cancel", "path": "v1/{+name}:cancel", - "id": "ml.projects.jobs.cancel" - }, - "get": { - "response": { - "$ref": "GoogleCloudMlV1__Job" + "id": "ml.projects.jobs.cancel", + "description": "Cancels a running job.", + "request": { + "$ref": "GoogleCloudMlV1__CancelJobRequest" }, + "httpMethod": "POST", "parameterOrder": [ "name" ], + "response": { + "$ref": "GoogleProtobuf__Empty" + } + }, + "get": { + "path": "v1/{+name}", + "id": "ml.projects.jobs.get", + "description": "Describes a job.", "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "name" ], + "response": { + "$ref": "GoogleCloudMlV1__Job" + }, "parameters": { "name": { "description": "Required. The name of the job to get the description of.", @@ -603,36 +575,29 @@ "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}", - "id": "ml.projects.jobs.get", - "path": "v1/{+name}", - "description": "Describes a job." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}" }, "list": { - "description": "Lists the jobs in the project.", "response": { "$ref": "GoogleCloudMlV1__ListJobsResponse" }, - "httpMethod": "GET", "parameterOrder": [ "parent" ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, "parent": { + "location": "path", "description": "Required. The name of the project for which to list jobs.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" }, "filter": { "location": "query", @@ -643,62 +608,53 @@ "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": { + "format": "int32", + "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.", + "type": "integer", + "location": "query" } }, "flatPath": "v1/projects/{projectsId}/jobs", "id": "ml.projects.jobs.list", - "path": "v1/{+parent}/jobs" - } - } - } - } - } - }, - "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": { - "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" - }, + "path": "v1/{+parent}/jobs", + "description": "Lists the jobs in the project." + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudMlV1__Job" + }, + "parameters": { + "parent": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The project name." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs", + "path": "v1/{+parent}/jobs", + "id": "ml.projects.jobs.create", + "description": "Creates a training or a batch prediction job.", + "request": { + "$ref": "GoogleCloudMlV1__Job" + } + } + } + } + } + } + }, + "parameters": { "access_token": { "description": "OAuth access token.", "type": "string", @@ -710,35 +666,79 @@ "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.", "default": "true", - "type": "boolean", + "type": "boolean" + }, + "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": { - "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": { - "description": "Returns response with indentations and line breaks.", "default": "true", "type": "boolean", + "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" + }, + "$.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" } }, @@ -754,152 +754,241 @@ "discoveryVersion": "v1", "version_module": "True", "schemas": { - "GoogleIamV1_LogConfig_DataAccessOptions": { - "description": "Write a Data Access (Gin) log", - "type": "object", - "properties": {}, - "id": "GoogleIamV1_LogConfig_DataAccessOptions" - }, - "GoogleCloudMlV1__PredictionInput": { - "description": "Represents input parameters for a prediction job.", + "GoogleIamV1_LogConfig_CloudAuditOptions": { + "description": "Write a Cloud Audit log", "type": "object", "properties": { - "dataFormat": { + "logName": { "enum": [ - "DATA_FORMAT_UNSPECIFIED", - "TEXT", - "TF_RECORD", - "TF_RECORD_GZIP" + "UNSPECIFIED_LOG_NAME", + "ADMIN_ACTIVITY", + "DATA_ACCESS" ], - "description": "Required. The format of the input data files.", + "description": "The log_name to populate in the Cloud Audit Record.", "type": "string", "enumDescriptions": [ - "Unspecified format.", - "The source file is a text file with instances separated by the\nnew-line character.", - "The source file is a TFRecord file.", - "The source file is a GZIP-compressed TFRecord file." + "Default. Should not be used.", + "Corresponds to \"cloudaudit.googleapis.com/activity\"", + "Corresponds to \"cloudaudit.googleapis.com/data_access\"" ] }, - "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.", + "isReadPermissionType": { + "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", + "type": "boolean" + } + }, + "id": "GoogleIamV1_LogConfig_CloudAuditOptions" + }, + "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": { + "errorMessage": { + "description": "Output only. The details of a failure or a cancellation.", "type": "string" }, - "inputPaths": { - "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.", - "items": { - "type": "string" - }, - "type": "array" - }, - "region": { - "description": "Required. The Google Compute Engine region to run the prediction job in.", + "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" }, - "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/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003eYOUR_MODEL/versions/\u003cvar\u003e[YOUR_VERSION]\u003c/var\u003e\"`", + "lastUseTime": { + "format": "google-datetime", + "description": "Output only. The time the version was last used for prediction.", "type": "string" }, - "modelName": { - "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003e[YOUR_MODEL]\u003c/var\u003e\"`", + "description": { + "description": "Optional. The description specified for the version when it was created.", "type": "string" }, - "outputPath": { - "description": "Required. The output Google Cloud Storage location.", + "deploymentUri": { + "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) 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" }, - "uri": { - "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", - "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" }, - "maxWorkerCount": { - "format": "int64", - "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.", - "type": "string" - } - }, - "id": "GoogleCloudMlV1__PredictionInput" - }, - "GoogleType__Expr": { - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object", - "properties": { - "location": { - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", - "type": "string" + "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.", + "$ref": "GoogleCloudMlV1__AutoScaling" }, - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", + "createTime": { + "format": "google-datetime", + "description": "Output only. The time the version was created.", "type": "string" }, - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "state": { + "enumDescriptions": [ + "The version state is unspecified.", + "The version is ready for prediction.", + "The version is still in the process of creation.", + "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." + ], + "enum": [ + "UNKNOWN", + "READY", + "CREATING", + "FAILED" + ], + "description": "Output only. The state of a version.", "type": "string" }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", + "manualScaling": { + "$ref": "GoogleCloudMlV1__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." + }, + "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" } }, - "id": "GoogleType__Expr" + "id": "GoogleCloudMlV1__Version" }, - "GoogleIamV1__AuditLogConfig": { - "type": "object", + "GoogleCloudMlV1__ParameterSpec": { "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "parameterName": { + "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".", + "type": "string" + }, + "categoricalValues": { + "description": "Required if type is `CATEGORICAL`. The list of possible categories.", "items": { "type": "string" }, "type": "array" }, - "logType": { + "minValue": { + "format": "double", + "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.", + "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.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "scaleType": { "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" + "NONE", + "UNIT_LINEAR_SCALE", + "UNIT_LOG_SCALE", + "UNIT_REVERSE_LOG_SCALE" ], - "description": "The log type that this config enables.", + "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).", "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" + "By default, no scaling is applied.", + "Scales the feasible space to (0, 1) linearly.", + "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.", + "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive." + ] + }, + "maxValue": { + "format": "double", + "description": "Required if typeis `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.", + "type": "number" + }, + "type": { + "enum": [ + "PARAMETER_TYPE_UNSPECIFIED", + "DOUBLE", + "INTEGER", + "CATEGORICAL", + "DISCRETE" + ], + "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.", + "Type for real-valued parameters.", + "Type for integral parameters.", + "The parameter is categorical, with a value chosen from the categories\nfield.", + "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored." ] } }, - "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." + "id": "GoogleCloudMlV1__ParameterSpec", + "description": "Represents a single hyperparameter to optimize.", + "type": "object" }, - "GoogleCloudMlV1beta1__OperationMetadata": { - "description": "Represents the metadata of the long-running operation.", + "GoogleIamV1_LogConfig_DataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "type": "object", + "properties": {}, + "id": "GoogleIamV1_LogConfig_DataAccessOptions" + }, + "GoogleCloudMlV1__PredictionInput": { + "description": "Represents input parameters for a prediction job.", "type": "object", "properties": { - "isCancellationRequested": { - "type": "boolean", - "description": "Indicates whether a request to cancel this operation has been made." + "modelName": { + "type": "string", + "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003e[YOUR_MODEL]\u003c/var\u003e\"`" }, - "createTime": { - "format": "google-datetime", - "description": "The time the operation was submitted.", + "outputPath": { + "description": "Required. The output Google Cloud Storage location.", "type": "string" }, - "modelName": { - "description": "Contains the name of the model associated with the operation.", + "maxWorkerCount": { + "type": "string", + "format": "int64", + "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified." + }, + "uri": { + "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", "type": "string" }, - "version": { - "$ref": "GoogleCloudMlV1beta1__Version", - "description": "Contains the version associated with the operation." + "dataFormat": { + "enumDescriptions": [ + "Unspecified format.", + "The source file is a text file with instances separated by the\nnew-line character.", + "The source file is a TFRecord file.", + "The source file is a GZIP-compressed TFRecord file." + ], + "enum": [ + "DATA_FORMAT_UNSPECIFIED", + "TEXT", + "TF_RECORD", + "TF_RECORD_GZIP" + ], + "description": "Required. The format of the input data files.", + "type": "string" + }, + "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" }, + "inputPaths": { + "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "Required. The Google Compute Engine region to run the prediction job in.", + "type": "string" + }, + "versionName": { + "type": "string", + "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/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003eYOUR_MODEL/versions/\u003cvar\u003e[YOUR_VERSION]\u003c/var\u003e\"`" + } + }, + "id": "GoogleCloudMlV1__PredictionInput" + }, + "GoogleCloudMlV1__OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "type": "object", + "properties": { "endTime": { "format": "google-datetime", "description": "The time operation processing completed.", "type": "string" }, "operationType": { - "type": "string", "enumDescriptions": [ "Unspecified operation type.", "An operation to create a new version.", @@ -912,22 +1001,55 @@ "DELETE_VERSION", "DELETE_MODEL" ], - "description": "The operation type." + "description": "The operation type.", + "type": "string" }, "startTime": { "format": "google-datetime", "description": "The time operation processing started.", "type": "string" + }, + "isCancellationRequested": { + "description": "Indicates whether a request to cancel this operation has been made.", + "type": "boolean" + }, + "createTime": { + "format": "google-datetime", + "description": "The time the operation was submitted.", + "type": "string" + }, + "modelName": { + "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." } }, - "id": "GoogleCloudMlV1beta1__OperationMetadata" + "id": "GoogleCloudMlV1__OperationMetadata" }, - "GoogleCloudMlV1__OperationMetadata": { + "GoogleCloudMlV1beta1__OperationMetadata": { + "id": "GoogleCloudMlV1beta1__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" + }, + "createTime": { + "format": "google-datetime", + "description": "The time the operation was submitted.", + "type": "string" + }, + "modelName": { + "description": "Contains the name of the model associated with the operation.", + "type": "string" + }, "version": { - "description": "Contains the version associated with the operation.", - "$ref": "GoogleCloudMlV1__Version" + "$ref": "GoogleCloudMlV1beta1__Version", + "description": "Contains the version associated with the operation." }, "endTime": { "format": "google-datetime", @@ -935,6 +1057,12 @@ "type": "string" }, "operationType": { + "enumDescriptions": [ + "Unspecified operation type.", + "An operation to create a new version.", + "An operation to delete an existing version.", + "An operation to delete an existing model." + ], "enum": [ "OPERATION_TYPE_UNSPECIFIED", "CREATE_VERSION", @@ -942,41 +1070,84 @@ "DELETE_MODEL" ], "description": "The operation type.", - "type": "string", - "enumDescriptions": [ - "Unspecified operation type.", - "An operation to create a new version.", - "An operation to delete an existing version.", - "An operation to delete an existing model." - ] + "type": "string" }, "startTime": { "format": "google-datetime", "description": "The time operation processing started.", "type": "string" + } + } + }, + "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": { + "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." }, - "isCancellationRequested": { - "description": "Indicates whether a request to cancel this operation has been made.", - "type": "boolean" + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "GoogleType__Expr": { + "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", + "type": "object", + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "type": "string" }, - "createTime": { - "format": "google-datetime", - "description": "The time the operation was submitted.", + "expression": { + "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", "type": "string" }, - "modelName": { - "description": "Contains the name of the model associated with the operation.", + "location": { + "type": "string", + "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file." + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", "type": "string" } }, - "id": "GoogleCloudMlV1__OperationMetadata", - "description": "Represents the metadata of the long-running operation." + "id": "GoogleType__Expr" }, "GoogleCloudMlV1__HyperparameterSpec": { - "id": "GoogleCloudMlV1__HyperparameterSpec", "description": "Represents a set of hyperparameters to optimize.", "type": "object", "properties": { + "maxTrials": { + "format": "int32", + "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.", + "type": "integer" + }, + "params": { + "description": "Required. The set of parameters to tune.", + "items": { + "$ref": "GoogleCloudMlV1__ParameterSpec" + }, + "type": "array" + }, "maxParallelTrials": { "format": "int32", "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.", @@ -987,8 +1158,6 @@ "type": "string" }, "goal": { - "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.", - "type": "string", "enumDescriptions": [ "Goal Type will default to maximize.", "Maximize the goal metric.", @@ -998,32 +1167,23 @@ "GOAL_TYPE_UNSPECIFIED", "MAXIMIZE", "MINIMIZE" - ] - }, - "maxTrials": { - "format": "int32", - "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.", - "type": "integer" - }, - "params": { - "description": "Required. The set of parameters to tune.", - "items": { - "$ref": "GoogleCloudMlV1__ParameterSpec" - }, - "type": "array" + ], + "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.", + "type": "string" } - } + }, + "id": "GoogleCloudMlV1__HyperparameterSpec" }, "GoogleCloudMlV1__ListJobsResponse": { "description": "Response message for the ListJobs method.", "type": "object", "properties": { "jobs": { - "description": "The list of jobs.", "items": { "$ref": "GoogleCloudMlV1__Job" }, - "type": "array" + "type": "array", + "description": "The list of jobs." }, "nextPageToken": { "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", @@ -1033,28 +1193,15 @@ "id": "GoogleCloudMlV1__ListJobsResponse" }, "GoogleCloudMlV1__SetDefaultVersionRequest": { - "description": "Request message for the SetDefaultVersion request.", "type": "object", "properties": {}, - "id": "GoogleCloudMlV1__SetDefaultVersionRequest" + "id": "GoogleCloudMlV1__SetDefaultVersionRequest", + "description": "Request message for the SetDefaultVersion request." }, "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": { - "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" @@ -1065,40 +1212,52 @@ }, "metadata": { "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", "type": "object" + }, + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "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": "GoogleLongrunning__Operation" }, "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\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", "type": "object", "properties": { - "exemptedMembers": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", "items": { - "type": "string" + "$ref": "GoogleIamV1__AuditLogConfig" }, "type": "array" }, - "service": { - "type": "string", - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services." - }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "exemptedMembers": { "items": { - "$ref": "GoogleIamV1__AuditLogConfig" + "type": "string" }, "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" } }, "id": "GoogleIamV1__AuditConfig" }, "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": { @@ -1125,15 +1284,17 @@ "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)." } }, - "id": "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." }, "GoogleProtobuf__Empty": { + "id": "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" + "properties": {} }, "GoogleIamV1__TestIamPermissionsRequest": { + "id": "GoogleIamV1__TestIamPermissionsRequest", "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { @@ -1144,8 +1305,7 @@ }, "type": "array" } - }, - "id": "GoogleIamV1__TestIamPermissionsRequest" + } }, "GoogleCloudMlV1__CancelJobRequest": { "description": "Request message for the CancelJob method.", @@ -1154,7 +1314,6 @@ "id": "GoogleCloudMlV1__CancelJobRequest" }, "GoogleCloudMlV1__ListVersionsResponse": { - "id": "GoogleCloudMlV1__ListVersionsResponse", "description": "Response message for the ListVersions method.", "type": "object", "properties": { @@ -1166,19 +1325,20 @@ "type": "array" }, "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", - "type": "string" + "type": "string", + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call." } - } + }, + "id": "GoogleCloudMlV1__ListVersionsResponse" }, "GoogleCloudMlV1beta1__ManualScaling": { "description": "Options for manually scaling a model.", "type": "object", "properties": { "nodes": { - "type": "integer", "format": "int32", - "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." + "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.", + "type": "integer" } }, "id": "GoogleCloudMlV1beta1__ManualScaling" @@ -1196,33 +1356,16 @@ "description": "Data access options." }, "cloudAudit": { - "description": "Cloud audit options.", - "$ref": "GoogleIamV1_LogConfig_CloudAuditOptions" + "$ref": "GoogleIamV1_LogConfig_CloudAuditOptions", + "description": "Cloud audit options." } }, "id": "GoogleIamV1__LogConfig" }, - "GoogleCloudMlV1__AutoScaling": { - "description": "Options for automatically scaling a model.", - "type": "object", - "properties": { - "minNodes": { - "format": "int32", - "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\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_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.", - "type": "integer" - } - }, - "id": "GoogleCloudMlV1__AutoScaling" - }, "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": { - "code": { - "type": "integer", - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code." - }, "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" @@ -1230,75 +1373,38 @@ "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { + "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - }, - "type": "object" + } }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } }, "id": "GoogleRpc__Status" }, - "GoogleCloudMlV1__ListModelsResponse": { - "description": "Response message for the ListModels method.", + "GoogleCloudMlV1__AutoScaling": { + "description": "Options for automatically scaling a model.", "type": "object", "properties": { - "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", - "type": "string" - }, - "models": { - "items": { - "$ref": "GoogleCloudMlV1__Model" - }, - "type": "array", - "description": "The list of models." + "minNodes": { + "format": "int32", + "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\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_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.", + "type": "integer" } }, - "id": "GoogleCloudMlV1__ListModelsResponse" + "id": "GoogleCloudMlV1__AutoScaling" }, "GoogleCloudMlV1__TrainingInput": { "description": "Represents input parameters for a training job.", "type": "object", "properties": { - "workerCount": { - "format": "int64", - "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.", - "type": "string" - }, - "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\n \u003ca href=\"/ml-engine/docs/how-tos/using-gpus\"\u003e\n GPU that you can use in your trainer\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 GPUs.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`.", - "type": "string" - }, - "runtimeVersion": { - "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose the latest stable version.", - "type": "string" - }, - "pythonModule": { - "description": "Required. The Python module name to run after installing the packages.", - "type": "string" - }, - "args": { - "description": "Optional. Command line arguments to pass to the program.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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" - }, - "region": { - "description": "Required. The Google Compute Engine region to run the training job in.", - "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": { "enum": [ "BASIC", @@ -1318,61 +1424,87 @@ ] }, "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", + "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." + }, + "hyperparameters": { + "$ref": "GoogleCloudMlV1__HyperparameterSpec", + "description": "Optional. The set of Hyperparameters to tune." + }, + "parameterServerCount": { + "format": "int64", + "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`.If you\nset this value, you must also set `parameter_server_type`.", + "type": "string" + }, + "packageUris": { + "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.", + "items": { + "type": "string" + }, + "type": "array" + }, + "workerCount": { + "format": "int64", + "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.", + "type": "string" + }, + "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\n \u003ca href=\"/ml-engine/docs/how-tos/using-gpus\"\u003e\n GPU that you can use in your trainer\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 GPUs.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`.", + "type": "string" + }, + "runtimeVersion": { + "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose the latest stable version.", "type": "string" }, - "hyperparameters": { - "description": "Optional. The set of Hyperparameters to tune.", - "$ref": "GoogleCloudMlV1__HyperparameterSpec" + "pythonModule": { + "description": "Required. The Python module name to run after installing the packages.", + "type": "string" }, - "parameterServerCount": { - "format": "int64", - "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`.If you\nset this value, you must also set `parameter_server_type`.", + "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" }, - "packageUris": { - "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.", + "args": { + "description": "Optional. Command line arguments to pass to the program.", "items": { "type": "string" }, "type": "array" + }, + "region": { + "description": "Required. The Google Compute Engine region to run the training job in.", + "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" } }, "id": "GoogleCloudMlV1__TrainingInput" }, - "GoogleCloudMlV1__Job": { - "id": "GoogleCloudMlV1__Job", - "description": "Represents a training or prediction job.", + "GoogleCloudMlV1__ListModelsResponse": { + "description": "Response message for the ListModels method.", "type": "object", "properties": { - "trainingOutput": { - "$ref": "GoogleCloudMlV1__TrainingOutput", - "description": "The current training job result." + "models": { + "items": { + "$ref": "GoogleCloudMlV1__Model" + }, + "type": "array", + "description": "The list of models." }, - "createTime": { - "format": "google-datetime", - "description": "Output only. When the job was created.", + "nextPageToken": { + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", "type": "string" - }, - "trainingInput": { - "$ref": "GoogleCloudMlV1__TrainingInput", - "description": "Input parameters to create a training job." - }, - "predictionInput": { - "$ref": "GoogleCloudMlV1__PredictionInput", - "description": "Input parameters to create a prediction job." - }, + } + }, + "id": "GoogleCloudMlV1__ListModelsResponse" + }, + "GoogleCloudMlV1__Job": { + "description": "Represents a training or prediction job.", + "type": "object", + "properties": { "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", @@ -1384,7 +1516,21 @@ "CANCELLED" ], "description": "Output only. The detailed state of a job.", - "type": "string" + "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" }, "jobId": { "description": "Required. The user-specified id of the job.", @@ -1400,17 +1546,32 @@ "type": "string" }, "startTime": { + "type": "string", "format": "google-datetime", - "description": "Output only. When the job processing was started.", - "type": "string" + "description": "Output only. When the job processing was started." }, "predictionOutput": { "$ref": "GoogleCloudMlV1__PredictionOutput", "description": "The current prediction job result." + }, + "trainingOutput": { + "$ref": "GoogleCloudMlV1__TrainingOutput", + "description": "The current training job result." + }, + "createTime": { + "format": "google-datetime", + "description": "Output only. When the job was created.", + "type": "string" + }, + "trainingInput": { + "$ref": "GoogleCloudMlV1__TrainingInput", + "description": "Input parameters to create a training job." } - } + }, + "id": "GoogleCloudMlV1__Job" }, "GoogleApi__HttpBody": { + "id": "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": { @@ -1434,48 +1595,29 @@ "description": "The HTTP Content-Type string representing the content type of the body.", "type": "string" } - }, - "id": "GoogleApi__HttpBody" - }, - "GoogleCloudMlV1__GetConfigResponse": { - "description": "Returns service account information associated with a project.", - "type": "object", - "properties": { - "serviceAccountProject": { - "type": "string", - "format": "int64", - "description": "The project number for `service_account`." - }, - "serviceAccount": { - "description": "The service account Cloud ML uses to access resources in the project.", - "type": "string" - } - }, - "id": "GoogleCloudMlV1__GetConfigResponse" + } }, "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/list).", + "type": "object", "properties": { "deploymentUri": { "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) for more\ninformation.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/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": "GoogleCloudMlV1beta1__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." - }, "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/v1beta1/projects.models.versions/setDefault).", "type": "boolean" }, + "autoScaling": { + "$ref": "GoogleCloudMlV1beta1__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." + }, "createTime": { "format": "google-datetime", "description": "Output only. The time the version was created.", "type": "string" }, - "manualScaling": { - "$ref": "GoogleCloudMlV1beta1__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." - }, "state": { "description": "Output only. The state of a version.", "type": "string", @@ -1492,33 +1634,53 @@ "FAILED" ] }, + "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": "GoogleCloudMlV1beta1__ManualScaling" + }, "name": { - "type": "string", - "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." + "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" }, "errorMessage": { - "description": "Output only. The details of a failure or a cancellation.", - "type": "string" + "type": "string", + "description": "Output only. The details of a failure or a cancellation." }, "lastUseTime": { - "type": "string", "format": "google-datetime", - "description": "Output only. The time the version was last used for prediction." + "description": "Output only. The time the version was last used for prediction.", + "type": "string" }, "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" }, "description": { - "type": "string", - "description": "Optional. The description specified for the version when it was created." + "description": "Optional. The description specified for the version when it was created.", + "type": "string" } }, - "id": "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/list).", - "type": "object" + "id": "GoogleCloudMlV1beta1__Version" + }, + "GoogleCloudMlV1__GetConfigResponse": { + "description": "Returns service account information associated with a project.", + "type": "object", + "properties": { + "serviceAccountProject": { + "format": "int64", + "description": "The project number for `service_account`.", + "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.", @@ -1528,25 +1690,29 @@ "type": "array" } }, - "id": "GoogleIamV1__TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", - "type": "object" + "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.", + "GoogleIamV1__SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { - "hyperparameters": { - "additionalProperties": { - "type": "string" - }, - "description": "The hyperparameters given to this trial.", - "type": "object" - }, - "trialId": { - "description": "The trial id for these results.", + "updateMask": { + "format": "google-fieldmask", + "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.", "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" + }, + "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": { "allMetrics": { "description": "All recorded object metrics for this trial.", "items": { @@ -1557,34 +1723,23 @@ "finalMetric": { "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric", "description": "The final objective metric seen for this trial." - } - }, - "id": "GoogleCloudMlV1__HyperparameterOutput" - }, - "GoogleIamV1__SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "updateMask": { - "format": "google-fieldmask", - "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.", - "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." + "hyperparameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The hyperparameters given to this trial.", + "type": "object" + }, + "trialId": { + "description": "The trial id for these results.", + "type": "string" } - }, - "id": "GoogleIamV1__SetIamPolicyRequest" + } }, "GoogleCloudMlV1__PredictionOutput": { "type": "object", "properties": { - "errorCount": { - "type": "string", - "format": "int64", - "description": "The number of data instances which resulted in errors." - }, "nodeHours": { "format": "double", "description": "Node hours used by the batch prediction job.", @@ -1598,6 +1753,11 @@ "format": "int64", "description": "The number of generated predictions.", "type": "string" + }, + "errorCount": { + "format": "int64", + "description": "The number of data instances which resulted in errors.", + "type": "string" } }, "id": "GoogleCloudMlV1__PredictionOutput", @@ -1607,9 +1767,6 @@ "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "iamOwned": { - "type": "boolean" - }, "rules": { "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", "items": { @@ -1618,9 +1775,9 @@ "type": "array" }, "version": { + "type": "integer", "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" + "description": "Version of the `Policy`. The default version is 0." }, "auditConfigs": { "description": "Specifies cloud audit logging configuration for this policy.", @@ -1640,16 +1797,21 @@ "format": "byte", "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.", "type": "string" + }, + "iamOwned": { + "type": "boolean" } }, "id": "GoogleIamV1__Policy" }, "GoogleLongrunning__ListOperationsResponse": { + "id": "GoogleLongrunning__ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "type": "string", + "description": "The standard List next-page token." }, "operations": { "description": "A list of operations that matches the specified filter in the request.", @@ -1658,42 +1820,14 @@ }, "type": "array" } - }, - "id": "GoogleLongrunning__ListOperationsResponse", - "description": "The response message for Operations.ListOperations." + } }, "GoogleIamV1__Condition": { + "id": "GoogleIamV1__Condition", "description": "A condition to be met.", "type": "object", "properties": { - "values": { - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" - }, - "type": "array" - }, - "iam": { - "enumDescriptions": [ - "Default non-attribute.", - "Either principal or (if present) authority selector.", - "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", - "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", - "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." - ], - "enum": [ - "NO_ATTR", - "AUTHORITY", - "ATTRIBUTION", - "APPROVER", - "JUSTIFICATION_TYPE" - ], - "description": "Trusted attributes supplied by the IAM system.", - "type": "string" - }, "op": { - "description": "An operator to apply the subject with.", - "type": "string", "enumDescriptions": [ "Default no-op.", "DEPRECATED. Use IN instead.", @@ -1709,20 +1843,19 @@ "IN", "NOT_IN", "DISCHARGED" - ] + ], + "description": "An operator to apply the subject with.", + "type": "string" }, "svc": { "description": "Trusted attributes discharged by the service.", "type": "string" }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, "sys": { - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" - ], "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", "type": "string", "enumDescriptions": [ @@ -1731,35 +1864,57 @@ "Service name", "Resource name", "IP address of the caller" + ], + "enum": [ + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" ] }, - "value": { - "description": "DEPRECATED. Use 'values' instead.", - "type": "string" + "iam": { + "type": "string", + "enumDescriptions": [ + "Default non-attribute.", + "Either principal or (if present) authority selector.", + "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", + "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", + "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." + ], + "enum": [ + "NO_ATTR", + "AUTHORITY", + "ATTRIBUTION", + "APPROVER", + "JUSTIFICATION_TYPE" + ], + "description": "Trusted attributes supplied by the IAM system." + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" } - }, - "id": "GoogleIamV1__Condition" + } }, "GoogleCloudMlV1__ManualScaling": { + "description": "Options for manually scaling a model.", + "type": "object", "properties": { "nodes": { + "type": "integer", "format": "int32", - "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.", - "type": "integer" + "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." } }, - "id": "GoogleCloudMlV1__ManualScaling", - "description": "Options for manually scaling a model.", - "type": "object" + "id": "GoogleCloudMlV1__ManualScaling" }, "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" - }, "condition": { "$ref": "GoogleType__Expr", "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." @@ -1770,11 +1925,17 @@ "type": "string" }, "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "GoogleIamV1__Binding" + "id": "GoogleIamV1__Binding", + "description": "Associates `members` with a `role`." }, "GoogleCloudMlV1__TrainingOutput": { + "description": "Represents results of a training job. Output only.", "type": "object", "properties": { "trials": { @@ -1790,8 +1951,8 @@ "type": "string" }, "isHyperparameterTuningJob": { - "type": "boolean", - "description": "Whether this job is a hyperparameter tuning job." + "description": "Whether this job is a hyperparameter tuning job.", + "type": "boolean" }, "consumedMLUnits": { "format": "double", @@ -1799,12 +1960,9 @@ "type": "number" } }, - "id": "GoogleCloudMlV1__TrainingOutput", - "description": "Represents results of a training job. Output only." + "id": "GoogleCloudMlV1__TrainingOutput" }, "GoogleCloudMlV1beta1__AutoScaling": { - "description": "Options for automatically scaling a model.", - "type": "object", "properties": { "minNodes": { "format": "int32", @@ -1812,11 +1970,19 @@ "type": "integer" } }, - "id": "GoogleCloudMlV1beta1__AutoScaling" + "id": "GoogleCloudMlV1beta1__AutoScaling", + "description": "Options for automatically scaling a model.", + "type": "object" }, "GoogleIamV1__Rule": { - "type": "object", "properties": { + "permissions": { + "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + }, "action": { "type": "string", "enumDescriptions": [ @@ -1868,34 +2034,29 @@ "type": "string" }, "type": "array" - }, - "permissions": { - "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - }, - "type": "array" } }, "id": "GoogleIamV1__Rule", - "description": "A rule to be applied in a Policy." + "description": "A rule to be applied in a Policy.", + "type": "object" }, "GoogleIamV1_LogConfig_CounterOptions": { + "description": "Options for counters", "type": "object", "properties": { "field": { - "description": "The field value to attribute.", - "type": "string" + "type": "string", + "description": "The field value to attribute." }, "metric": { "description": "The metric to update.", "type": "string" } }, - "id": "GoogleIamV1_LogConfig_CounterOptions", - "description": "Options for counters" + "id": "GoogleIamV1_LogConfig_CounterOptions" }, "GoogleCloudMlV1__PredictRequest": { + "type": "object", "properties": { "httpBody": { "description": "\nRequired. The prediction request body.", @@ -1903,192 +2064,31 @@ } }, "id": "GoogleCloudMlV1__PredictRequest", - "description": "Request for predictions to be issued against a trained model.\n\nThe body of the request is a single JSON object with a single top-level\nfield:\n\n\u003cdl\u003e\n \u003cdt\u003einstances\u003c/dt\u003e\n \u003cdd\u003eA JSON array containing values representing the instances to use for\n prediction.\u003c/dd\u003e\n\u003c/dl\u003e\n\nThe structure of each element of the instances list is determined by your\nmodel's input definition. Instances can include named inputs or can contain\nonly unlabeled values.\n\nNot all data includes named inputs. Some instances will be simple\nJSON values (boolean, number, or string). However, instances are often lists\nof simple values, or complex nested lists. Here are some examples of request\nbodies:\n\nCSV data with each row encoded as a string value:\n\u003cpre\u003e\n{\"instances\": [\"1.0,true,\\\\\"x\\\\\"\", \"-2.0,false,\\\\\"y\\\\\"\"]}\n\u003c/pre\u003e\nPlain text:\n\u003cpre\u003e\n{\"instances\": [\"the quick brown fox\", \"la bruja le dio\"]}\n\u003c/pre\u003e\nSentences encoded as lists of words (vectors of strings):\n\u003cpre\u003e\n{\n \"instances\": [\n [\"the\",\"quick\",\"brown\"],\n [\"la\",\"bruja\",\"le\"],\n ...\n ]\n}\n\u003c/pre\u003e\nFloating point scalar values:\n\u003cpre\u003e\n{\"instances\": [0.0, 1.1, 2.2]}\n\u003c/pre\u003e\nVectors of integers:\n\u003cpre\u003e\n{\n \"instances\": [\n [0, 1, 2],\n [3, 4, 5],\n ...\n ]\n}\n\u003c/pre\u003e\nTensors (in this case, two-dimensional tensors):\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [0, 1, 2],\n [3, 4, 5]\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nImages can be represented different ways. In this encoding scheme the first\ntwo dimensions represent the rows and columns of the image, and the third\ncontains lists (vectors) of the R, G, and B values for each pixel.\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nJSON strings must be encoded as UTF-8. To send binary data, you must\nbase64-encode the data and mark it as binary. To mark a JSON string\nas binary, replace it with a JSON object with a single attribute named `b64`:\n\u003cpre\u003e{\"b64\": \"...\"} \u003c/pre\u003e\nFor example:\n\nTwo Serialized tf.Examples (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"X5ad6u\"}, {\"b64\": \"IA9j4nx\"}]}\n\u003c/pre\u003e\nTwo JPEG image byte strings (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"ASa8asdf\"}, {\"b64\": \"JLK7ljk3\"}]}\n\u003c/pre\u003e\nIf your data includes named references, format each instance as a JSON object\nwith the named references as the keys:\n\nJSON input data to be preprocessed:\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"a\": 1.0,\n \"b\": true,\n \"c\": \"x\"\n },\n {\n \"a\": -2.0,\n \"b\": false,\n \"c\": \"y\"\n }\n ]\n}\n\u003c/pre\u003e\nSome models have an underlying TensorFlow graph that accepts multiple input\ntensors. In this case, you should use the names of JSON name/value pairs to\nidentify the input tensors, as shown in the following exmaples:\n\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(base64-encoded string):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": {\"b64\": \"ASa8asdf\"}\n },\n {\n \"tag\": \"car\",\n \"image\": {\"b64\": \"JLK7ljk3\"}\n }\n ]\n}\n\u003c/pre\u003e\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(3-dimensional array of 8-bit ints):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ]\n },\n {\n \"tag\": \"car\",\n \"image\": [\n [\n [255, 0, 102],\n [255, 0, 97],\n ...\n ],\n [\n [254, 1, 101],\n [254, 2, 93],\n ...\n ],\n ...\n ]\n },\n ...\n ]\n}\n\u003c/pre\u003e\nIf the call is successful, the response body will contain one prediction\nentry per instance in the request body. If prediction fails for any\ninstance, the response body will contain no predictions and will contian\na single error entry instead.", - "type": "object" + "description": "Request for predictions to be issued against a trained model.\n\nThe body of the request is a single JSON object with a single top-level\nfield:\n\n\u003cdl\u003e\n \u003cdt\u003einstances\u003c/dt\u003e\n \u003cdd\u003eA JSON array containing values representing the instances to use for\n prediction.\u003c/dd\u003e\n\u003c/dl\u003e\n\nThe structure of each element of the instances list is determined by your\nmodel's input definition. Instances can include named inputs or can contain\nonly unlabeled values.\n\nNot all data includes named inputs. Some instances will be simple\nJSON values (boolean, number, or string). However, instances are often lists\nof simple values, or complex nested lists. Here are some examples of request\nbodies:\n\nCSV data with each row encoded as a string value:\n\u003cpre\u003e\n{\"instances\": [\"1.0,true,\\\\\"x\\\\\"\", \"-2.0,false,\\\\\"y\\\\\"\"]}\n\u003c/pre\u003e\nPlain text:\n\u003cpre\u003e\n{\"instances\": [\"the quick brown fox\", \"la bruja le dio\"]}\n\u003c/pre\u003e\nSentences encoded as lists of words (vectors of strings):\n\u003cpre\u003e\n{\n \"instances\": [\n [\"the\",\"quick\",\"brown\"],\n [\"la\",\"bruja\",\"le\"],\n ...\n ]\n}\n\u003c/pre\u003e\nFloating point scalar values:\n\u003cpre\u003e\n{\"instances\": [0.0, 1.1, 2.2]}\n\u003c/pre\u003e\nVectors of integers:\n\u003cpre\u003e\n{\n \"instances\": [\n [0, 1, 2],\n [3, 4, 5],\n ...\n ]\n}\n\u003c/pre\u003e\nTensors (in this case, two-dimensional tensors):\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [0, 1, 2],\n [3, 4, 5]\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nImages can be represented different ways. In this encoding scheme the first\ntwo dimensions represent the rows and columns of the image, and the third\ncontains lists (vectors) of the R, G, and B values for each pixel.\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nJSON strings must be encoded as UTF-8. To send binary data, you must\nbase64-encode the data and mark it as binary. To mark a JSON string\nas binary, replace it with a JSON object with a single attribute named `b64`:\n\u003cpre\u003e{\"b64\": \"...\"} \u003c/pre\u003e\nFor example:\n\nTwo Serialized tf.Examples (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"X5ad6u\"}, {\"b64\": \"IA9j4nx\"}]}\n\u003c/pre\u003e\nTwo JPEG image byte strings (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"ASa8asdf\"}, {\"b64\": \"JLK7ljk3\"}]}\n\u003c/pre\u003e\nIf your data includes named references, format each instance as a JSON object\nwith the named references as the keys:\n\nJSON input data to be preprocessed:\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"a\": 1.0,\n \"b\": true,\n \"c\": \"x\"\n },\n {\n \"a\": -2.0,\n \"b\": false,\n \"c\": \"y\"\n }\n ]\n}\n\u003c/pre\u003e\nSome models have an underlying TensorFlow graph that accepts multiple input\ntensors. In this case, you should use the names of JSON name/value pairs to\nidentify the input tensors, as shown in the following exmaples:\n\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(base64-encoded string):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": {\"b64\": \"ASa8asdf\"}\n },\n {\n \"tag\": \"car\",\n \"image\": {\"b64\": \"JLK7ljk3\"}\n }\n ]\n}\n\u003c/pre\u003e\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(3-dimensional array of 8-bit ints):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ]\n },\n {\n \"tag\": \"car\",\n \"image\": [\n [\n [255, 0, 102],\n [255, 0, 97],\n ...\n ],\n [\n [254, 1, 101],\n [254, 2, 93],\n ...\n ],\n ...\n ]\n },\n ...\n ]\n}\n\u003c/pre\u003e\nIf the call is successful, the response body will contain one prediction\nentry per instance in the request body. If prediction fails for any\ninstance, the response body will contain no predictions and will contian\na single error entry instead." }, "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric": { "description": "An observed value of a metric.", "type": "object", "properties": { - "trainingStep": { - "format": "int64", - "description": "The global training step for this metric.", - "type": "string" - }, "objectiveValue": { "format": "double", "description": "The objective value at this training step.", "type": "number" - } - }, - "id": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric" - }, - "GoogleIamV1_LogConfig_CloudAuditOptions": { - "description": "Write a Cloud Audit log", - "type": "object", - "properties": { - "logName": { - "enumDescriptions": [ - "Default. Should not be used.", - "Corresponds to \"cloudaudit.googleapis.com/activity\"", - "Corresponds to \"cloudaudit.googleapis.com/data_access\"" - ], - "enum": [ - "UNSPECIFIED_LOG_NAME", - "ADMIN_ACTIVITY", - "DATA_ACCESS" - ], - "description": "The log_name to populate in the Cloud Audit Record.", - "type": "string" - }, - "isReadPermissionType": { - "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", - "type": "boolean" - } - }, - "id": "GoogleIamV1_LogConfig_CloudAuditOptions" - }, - "GoogleCloudMlV1__Version": { - "properties": { - "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" - }, - "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.", - "$ref": "GoogleCloudMlV1__AutoScaling" - }, - "createTime": { - "format": "google-datetime", - "description": "Output only. The time the version was created.", - "type": "string" - }, - "state": { - "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 still in the process of creation.", - "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." - ], - "enum": [ - "UNKNOWN", - "READY", - "CREATING", - "FAILED" - ] - }, - "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": { - "type": "string", - "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." - }, - "errorMessage": { - "description": "Output only. The details of a failure or a cancellation.", - "type": "string" - }, - "lastUseTime": { - "type": "string", - "format": "google-datetime", - "description": "Output only. The time the version was last used for prediction." - }, - "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" - }, - "description": { - "type": "string", - "description": "Optional. The description specified for the version when it was created." - }, - "deploymentUri": { - "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) 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).", - "type": "object" - }, - "GoogleCloudMlV1__ParameterSpec": { - "properties": { - "minValue": { - "format": "double", - "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.", - "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.", - "items": { - "format": "double", - "type": "number" - }, - "type": "array" - }, - "scaleType": { - "enum": [ - "NONE", - "UNIT_LINEAR_SCALE", - "UNIT_LOG_SCALE", - "UNIT_REVERSE_LOG_SCALE" - ], - "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).", + "trainingStep": { "type": "string", - "enumDescriptions": [ - "By default, no scaling is applied.", - "Scales the feasible space to (0, 1) linearly.", - "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.", - "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive." - ] - }, - "maxValue": { - "format": "double", - "description": "Required if typeis `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.", - "type": "number" - }, - "type": { - "enumDescriptions": [ - "You must specify a valid type. Using this unspecified type will result in\nan error.", - "Type for real-valued parameters.", - "Type for integral parameters.", - "The parameter is categorical, with a value chosen from the categories\nfield.", - "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored." - ], - "enum": [ - "PARAMETER_TYPE_UNSPECIFIED", - "DOUBLE", - "INTEGER", - "CATEGORICAL", - "DISCRETE" - ], - "description": "Required. The type of the parameter.", - "type": "string" - }, - "parameterName": { - "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".", - "type": "string" - }, - "categoricalValues": { - "description": "Required if type is `CATEGORICAL`. The list of possible categories.", - "items": { - "type": "string" - }, - "type": "array" + "format": "int64", + "description": "The global training step for this metric." } }, - "id": "GoogleCloudMlV1__ParameterSpec", - "description": "Represents a single hyperparameter to optimize.", - "type": "object" + "id": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric" } }, - "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 Machine Learning Engine", "auth": { "oauth2": { diff --git a/DiscoveryJson/ml_v1beta1.json b/DiscoveryJson/ml_v1beta1.json index c43476ff7e..c8b485f17f 100644 --- a/DiscoveryJson/ml_v1beta1.json +++ b/DiscoveryJson/ml_v1beta1.json @@ -1,1003 +1,1122 @@ { - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "etag": { - "type": "string", - "format": "byte", - "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." - }, - "iamOwned": { - "type": "boolean" - }, - "rules": { - "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "GoogleIamV1__Rule" - }, - "type": "array" - }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "GoogleIamV1__AuditConfig" + "ownerName": "Google", + "resources": { + "projects": { + "methods": { + "predict": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleApi__HttpBody" }, - "type": "array" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "GoogleIamV1__Binding" + "parameters": { + "name": { + "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.", + "type": "string", + "required": true, + "pattern": "^projects/.+$", + "location": "path" + } }, - "type": "array" - } - }, - "id": "GoogleIamV1__Policy" - }, - "GoogleCloudMlV1beta1__Job": { - "id": "GoogleCloudMlV1beta1__Job", - "description": "Represents a training or prediction job.", - "type": "object", - "properties": { - "startTime": { - "format": "google-datetime", - "description": "Output only. When the job processing was started.", - "type": "string" - }, - "predictionOutput": { - "description": "The current prediction job result.", - "$ref": "GoogleCloudMlV1beta1__PredictionOutput" - }, - "trainingOutput": { - "$ref": "GoogleCloudMlV1beta1__TrainingOutput", - "description": "The current training job result." - }, - "trainingInput": { - "$ref": "GoogleCloudMlV1beta1__TrainingInput", - "description": "Input parameters to create a training job." - }, - "createTime": { - "format": "google-datetime", - "description": "Output only. When the job was created.", - "type": "string" - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "QUEUED", - "PREPARING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLING", - "CANCELLED" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "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": { - "$ref": "GoogleCloudMlV1beta1__PredictionInput", - "description": "Input parameters to create a prediction job." - }, - "errorMessage": { - "description": "Output only. The details of a failure or a cancellation.", - "type": "string" - }, - "jobId": { - "description": "Required. The user-specified id of the job.", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "Output only. When the job processing was completed.", - "type": "string" - } - } - }, - "GoogleCloudMlV1beta1__TrainingInput": { - "id": "GoogleCloudMlV1beta1__TrainingInput", - "description": "Represents input parameters for a training job.", - "type": "object", - "properties": { - "workerCount": { - "format": "int64", - "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.", - "type": "string" - }, - "masterType": { - "type": "string", - "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\n \u003ca href=\"/ml-engine/docs/how-tos/using-gpus\"\u003e\n GPU that you can use in your trainer\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 GPUs.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`." - }, - "runtimeVersion": { - "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose the latest stable version.", - "type": "string" - }, - "pythonModule": { - "description": "Required. The Python module name to run after installing the packages.", - "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.", - "type": "string" + "flatPath": "v1beta1/projects/{projectsId}:predict", + "path": "v1beta1/{+name}:predict", + "id": "ml.projects.predict", + "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION", + "request": { + "$ref": "GoogleCloudMlV1beta1__PredictRequest" + } }, - "args": { - "description": "Optional. Command line arguments to pass to the program.", - "items": { - "type": "string" + "getConfig": { + "response": { + "$ref": "GoogleCloudMlV1beta1__GetConfigResponse" }, - "type": "array" - }, - "region": { - "description": "Required. The Google Compute Engine region to run the training job in.", - "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 GPU](/ml-engine/docs/how-tos/using-gpus).", - "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." + "parameterOrder": [ + "name" ], - "enum": [ - "BASIC", - "STANDARD_1", - "PREMIUM_1", - "BASIC_GPU", - "CUSTOM" + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "description": "Required. Specifies the machine types, the number of replicas for workers\nand parameter servers.", - "type": "string" - }, - "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": { - "description": "Optional. The set of Hyperparameters to tune.", - "$ref": "GoogleCloudMlV1beta1__HyperparameterSpec" - }, - "parameterServerCount": { - "type": "string", - "format": "int64", - "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`.If you\nset this value, you must also set `parameter_server_type`." - }, - "packageUris": { - "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.", - "items": { - "type": "string" - }, - "type": "array" - } - } - }, - "GoogleLongrunning__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.", - "items": { - "$ref": "GoogleLongrunning__Operation" + "parameters": { + "name": { + "description": "Required. The project name.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } }, - "type": "array" - } - }, - "id": "GoogleLongrunning__ListOperationsResponse" - }, - "GoogleCloudMlV1beta1__GetConfigResponse": { - "description": "Returns service account information associated with a project.", - "type": "object", - "properties": { - "serviceAccountProject": { - "format": "int64", - "description": "The project number for `service_account`.", - "type": "string" - }, - "serviceAccount": { - "description": "The service account Cloud ML uses to access resources in the project.", - "type": "string" + "flatPath": "v1beta1/projects/{projectsId}:getConfig", + "id": "ml.projects.getConfig", + "path": "v1beta1/{+name}:getConfig", + "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account persmissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning." } }, - "id": "GoogleCloudMlV1beta1__GetConfigResponse" - }, - "GoogleIamV1__Condition": { - "type": "object", - "properties": { - "value": { - "description": "DEPRECATED. Use 'values' instead.", - "type": "string" - }, - "sys": { - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" - ], - "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", - "type": "string", - "enumDescriptions": [ - "Default non-attribute type", - "Region of the resource", - "Service name", - "Resource name", - "IP address of the caller" - ] - }, - "values": { - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" + "resources": { + "models": { + "resources": { + "versions": { + "methods": { + "setDefault": { + "id": "ml.projects.models.versions.setDefault", + "path": "v1beta1/{+name}:setDefault", + "request": { + "$ref": "GoogleCloudMlV1beta1__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": "GoogleCloudMlV1beta1__Version" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", + "location": "path", + "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/v1beta1/projects.models.versions/list).\n\nAuthorization: `ml.models.update` permission is required on the parent model.", + "type": "string", + "required": true + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault" + }, + "delete": { + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", + "id": "ml.projects.models.versions.delete", + "path": "v1beta1/{+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.", + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "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/v1beta1/projects.models.versions/list).", + "type": "string", + "required": true + } + } + }, + "get": { + "response": { + "$ref": "GoogleCloudMlV1beta1__Version" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Required. The name of the version.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", + "id": "ml.projects.models.versions.get", + "path": "v1beta1/{+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/v1beta1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model." + }, + "list": { + "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has a lot of 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):", + "response": { + "$ref": "GoogleCloudMlV1beta1__ListVersionsResponse" + }, + "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", + "format": "int32", + "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.", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Required. The name of the model for which to list the version.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions", + "id": "ml.projects.models.versions.list", + "path": "v1beta1/{+parent}/versions" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameters": { + "parent": { + "location": "path", + "description": "Required. The name of the model.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions", + "path": "v1beta1/{+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/v1beta1/projects.models.versions/setDefault).", + "request": { + "$ref": "GoogleCloudMlV1beta1__Version" + } + } + } + } }, - "type": "array" - }, - "iam": { - "enumDescriptions": [ - "Default non-attribute.", - "Either principal or (if present) authority selector.", - "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", - "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", - "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." - ], - "enum": [ - "NO_ATTR", - "AUTHORITY", - "ATTRIBUTION", - "APPROVER", - "JUSTIFICATION_TYPE" - ], - "description": "Trusted attributes supplied by the IAM system.", - "type": "string" - }, - "op": { - "enumDescriptions": [ - "Default no-op.", - "DEPRECATED. Use IN instead.", - "DEPRECATED. Use NOT_IN instead.", - "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", - "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", - "Subject is discharged" - ], - "enum": [ - "NO_OP", - "EQUALS", - "NOT_EQUALS", - "IN", - "NOT_IN", - "DISCHARGED" - ], - "description": "An operator to apply the subject with.", - "type": "string" + "methods": { + "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/v1beta1/projects.models.versions/delete).", + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "Required. The name of the model.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}", + "id": "ml.projects.models.delete", + "path": "v1beta1/{+name}" + }, + "list": { + "flatPath": "v1beta1/projects/{projectsId}/models", + "path": "v1beta1/{+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.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudMlV1beta1__ListModelsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The name of the project whose models are to be listed.", + "type": "string", + "required": true + }, + "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", + "format": "int32", + "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.", + "type": "integer" + } + } + }, + "create": { + "request": { + "$ref": "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/create).", + "response": { + "$ref": "GoogleCloudMlV1beta1__Model" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The project name.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models", + "id": "ml.projects.models.create", + "path": "v1beta1/{+parent}/models" + }, + "setIamPolicy": { + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:setIamPolicy", + "id": "ml.projects.models.setIamPolicy", + "path": "v1beta1/{+resource}:setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" + } + }, + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:getIamPolicy", + "path": "v1beta1/{+resource}:getIamPolicy", + "id": "ml.projects.models.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" + } + }, + "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).", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudMlV1beta1__Model" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Required. The name of the model.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}", + "path": "v1beta1/{+name}", + "id": "ml.projects.models.get" + }, + "testIamPermissions": { + "response": { + "$ref": "GoogleIamV1__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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:testIamPermissions", + "id": "ml.projects.models.testIamPermissions", + "path": "v1beta1/{+resource}: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." + } + } }, - "svc": { - "description": "Trusted attributes discharged by the service.", - "type": "string" + "operations": { + "methods": { + "cancel": { + "httpMethod": "POST", + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}:cancel", + "path": "v1beta1/{+name}:cancel", + "id": "ml.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`." + }, + "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": { + "description": "The name of the operation resource to be deleted.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}", + "id": "ml.projects.operations.delete", + "path": "v1beta1/{+name}" + }, + "get": { + "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}", + "id": "ml.projects.operations.get", + "path": "v1beta1/{+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.", + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "flatPath": "v1beta1/projects/{projectsId}/operations", + "path": "v1beta1/{+name}/operations", + "id": "ml.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.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleLongrunning__ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "location": "path", + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + } + } + } + }, + "jobs": { + "methods": { + "get": { + "response": { + "$ref": "GoogleCloudMlV1beta1__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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/jobs/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}", + "id": "ml.projects.jobs.get", + "path": "v1beta1/{+name}", + "description": "Describes a job." + }, + "list": { + "description": "Lists the jobs in the project.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudMlV1beta1__ListJobsResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the project for which to list jobs.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "filter": { + "description": "Optional. Specifies the subset of jobs to retrieve.", + "type": "string", + "location": "query" + }, + "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": { + "format": "int32", + "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.", + "type": "integer", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/jobs", + "path": "v1beta1/{+parent}/jobs", + "id": "ml.projects.jobs.list" + }, + "create": { + "description": "Creates a training or a batch prediction job.", + "request": { + "$ref": "GoogleCloudMlV1beta1__Job" + }, + "response": { + "$ref": "GoogleCloudMlV1beta1__Job" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "description": "Required. The project name.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/jobs", + "id": "ml.projects.jobs.create", + "path": "v1beta1/{+parent}/jobs" + }, + "cancel": { + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/jobs/[^/]+$", + "location": "path", + "description": "Required. The name of the job to cancel.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}:cancel", + "id": "ml.projects.jobs.cancel", + "path": "v1beta1/{+name}:cancel", + "description": "Cancels a running job.", + "request": { + "$ref": "GoogleCloudMlV1beta1__CancelJobRequest" + } + } + } } - }, - "id": "GoogleIamV1__Condition", - "description": "A condition to be met." + } + } + }, + "parameters": { + "access_token": { + "type": "string", + "location": "query", + "description": "OAuth access token." }, - "GoogleCloudMlV1beta1__SetDefaultVersionRequest": { - "description": "Request message for the SetDefaultVersion request.", - "type": "object", - "properties": {}, - "id": "GoogleCloudMlV1beta1__SetDefaultVersionRequest" + "key": { + "description": "API key. 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" }, - "GoogleCloudMlV1__ManualScaling": { - "description": "Options for manually scaling a model.", - "type": "object", - "properties": { - "nodes": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "GoogleCloudMlV1__ManualScaling" + "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" }, - "GoogleIamV1__Binding": { - "id": "GoogleIamV1__Binding", - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "condition": { - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.", - "$ref": "GoogleType__Expr" - }, - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", - "items": { - "type": "string" - }, - "type": "array" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - } + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" }, - "GoogleIamV1__Rule": { - "properties": { - "notIn": { - "items": { - "type": "string" - }, - "type": "array", - "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto)." - }, - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "conditions": { - "description": "Additional restrictions that must be met", - "items": { - "$ref": "GoogleIamV1__Condition" - }, - "type": "array" - }, - "logConfig": { - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", - "items": { - "$ref": "GoogleIamV1__LogConfig" - }, - "type": "array" - }, - "in": { - "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - }, - "type": "array" - }, - "permissions": { - "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - }, - "type": "array" - }, - "action": { - "enum": [ - "NO_ACTION", - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG" - ], - "description": "Required", - "type": "string", - "enumDescriptions": [ - "Default no action.", - "Matching 'Entries' grant access.", - "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' deny access.", - "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' tell IAM.Check callers to generate logs." - ] - } - }, - "id": "GoogleIamV1__Rule", - "description": "A rule to be applied in a Policy.", - "type": "object" + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, - "GoogleCloudMlV1beta1__AutoScaling": { - "description": "Options for automatically scaling a model.", - "type": "object", - "properties": { - "minNodes": { - "format": "int32", - "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\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_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.", - "type": "integer" - } - }, - "id": "GoogleCloudMlV1beta1__AutoScaling" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" }, - "GoogleIamV1_LogConfig_CounterOptions": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "The field value to attribute." - }, - "metric": { - "description": "The metric to update.", - "type": "string" - } - }, - "id": "GoogleIamV1_LogConfig_CounterOptions", - "description": "Options for counters" + "upload_protocol": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, - "GoogleCloudMlV1beta1__ParameterSpec": { - "description": "Represents a single hyperparameter to optimize.", - "type": "object", - "properties": { - "minValue": { - "format": "double", - "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.", - "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.", - "items": { - "format": "double", - "type": "number" - }, - "type": "array" - }, - "scaleType": { - "enumDescriptions": [ - "By default, no scaling is applied.", - "Scales the feasible space to (0, 1) linearly.", - "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.", - "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive." - ], - "enum": [ - "NONE", - "UNIT_LINEAR_SCALE", - "UNIT_LOG_SCALE", - "UNIT_REVERSE_LOG_SCALE" - ], - "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).", - "type": "string" - }, - "maxValue": { - "format": "double", - "description": "Required if typeis `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.", - "type": "number" - }, - "type": { - "enum": [ - "PARAMETER_TYPE_UNSPECIFIED", - "DOUBLE", - "INTEGER", - "CATEGORICAL", - "DISCRETE" - ], - "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.", - "Type for real-valued parameters.", - "Type for integral parameters.", - "The parameter is categorical, with a value chosen from the categories\nfield.", - "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored." - ] - }, - "parameterName": { - "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".", - "type": "string" - }, - "categoricalValues": { - "items": { - "type": "string" - }, - "type": "array", - "description": "Required if type is `CATEGORICAL`. The list of possible categories." - } - }, - "id": "GoogleCloudMlV1beta1__ParameterSpec" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric": { - "id": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric", - "description": "An observed value of a metric.", - "type": "object", - "properties": { - "trainingStep": { - "format": "int64", - "description": "The global training step for this metric.", - "type": "string" - }, - "objectiveValue": { - "format": "double", - "description": "The objective value at this training step.", - "type": "number" - } - } + "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" + ] }, - "GoogleCloudMlV1beta1__PredictionOutput": { - "type": "object", - "properties": { - "predictionCount": { - "format": "int64", - "description": "The number of generated predictions.", - "type": "string" - }, - "errorCount": { - "format": "int64", - "description": "The number of data instances which resulted in errors.", - "type": "string" - }, - "nodeHours": { - "format": "double", - "description": "Node hours used by the batch prediction job.", - "type": "number" - }, - "outputPath": { - "description": "The output Google Cloud Storage location provided at the job creation time.", - "type": "string" - } - }, - "id": "GoogleCloudMlV1beta1__PredictionOutput", - "description": "Represents results of a prediction job." + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "GoogleCloudMlV1beta1__TrainingOutput": { + "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://ml.googleapis.com/", + "kind": "discovery#restDescription", + "description": "An API to enable creating and using machine learning models.", + "servicePath": "", + "basePath": "", + "revision": "20170707", + "documentationLink": "https://cloud.google.com/ml/", + "id": "ml:v1beta1", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "GoogleIamV1__SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", "properties": { - "trials": { - "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.", - "items": { - "$ref": "GoogleCloudMlV1beta1__HyperparameterOutput" - }, - "type": "array" - }, - "completedTrialCount": { - "format": "int64", - "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.", + "updateMask": { + "format": "google-fieldmask", + "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.", "type": "string" }, - "isHyperparameterTuningJob": { - "description": "Whether this job is a hyperparameter tuning job.", - "type": "boolean" - }, - "consumedMLUnits": { - "format": "double", - "description": "The amount of ML units consumed by the job.", - "type": "number" + "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": "GoogleCloudMlV1beta1__TrainingOutput", - "description": "Represents results of a training job. Output only.", - "type": "object" + "id": "GoogleIamV1__SetIamPolicyRequest" }, - "GoogleIamV1_LogConfig_CloudAuditOptions": { - "description": "Write a Cloud Audit log", + "GoogleCloudMlV1beta1__CancelJobRequest": { + "description": "Request message for the CancelJob method.", "type": "object", - "properties": { - "isReadPermissionType": { - "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", - "type": "boolean" - }, - "logName": { - "type": "string", - "enumDescriptions": [ - "Default. Should not be used.", - "Corresponds to \"cloudaudit.googleapis.com/activity\"", - "Corresponds to \"cloudaudit.googleapis.com/data_access\"" - ], - "enum": [ - "UNSPECIFIED_LOG_NAME", - "ADMIN_ACTIVITY", - "DATA_ACCESS" - ], - "description": "The log_name to populate in the Cloud Audit Record." - } - }, - "id": "GoogleIamV1_LogConfig_CloudAuditOptions" + "properties": {}, + "id": "GoogleCloudMlV1beta1__CancelJobRequest" }, - "GoogleCloudMlV1__Version": { + "GoogleCloudMlV1beta1__Model": { + "id": "GoogleCloudMlV1beta1__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": { - "deploymentUri": { - "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) 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" - }, - "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" - }, - "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." - }, - "createTime": { - "format": "google-datetime", - "description": "Output only. The time the version was created.", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "The version state is unspecified.", - "The version is ready for prediction.", - "The version is still in the process of creation.", - "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." - ], - "enum": [ - "UNKNOWN", - "READY", - "CREATING", - "FAILED" - ], - "description": "Output only. The state of a version.", - "type": "string" - }, - "manualScaling": { - "$ref": "GoogleCloudMlV1__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." + "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.\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.", + "items": { + "type": "string" + }, + "type": "array" }, "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" - }, - "errorMessage": { - "description": "Output only. The details of a failure or a cancellation.", + "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" }, - "lastUseTime": { - "format": "google-datetime", - "description": "Output only. The time the version was last used for prediction.", + "description": { + "description": "Optional. The description specified for the model when it was created.", "type": "string" }, - "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" + "onlinePredictionLogging": { + "description": "Optional. If true, enables StackDriver Logging for online prediction.\nDefault is false.", + "type": "boolean" }, - "description": { - "type": "string", - "description": "Optional. The description specified for the version when it was created." + "defaultVersion": { + "$ref": "GoogleCloudMlV1beta1__Version", + "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/v1beta1/projects.models.versions/setDefault)." } - }, - "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)." - }, - "GoogleIamV1_LogConfig_DataAccessOptions": { - "description": "Write a Data Access (Gin) log", - "type": "object", - "properties": {}, - "id": "GoogleIamV1_LogConfig_DataAccessOptions" + } }, - "GoogleCloudMlV1beta1__HyperparameterSpec": { - "description": "Represents a set of hyperparameters to optimize.", + "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "maxParallelTrials": { - "format": "int32", - "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.", - "type": "integer" - }, - "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" - }, - "goal": { - "enumDescriptions": [ - "Goal Type will default to maximize.", - "Maximize the goal metric.", - "Minimize the goal metric." - ], - "enum": [ - "GOAL_TYPE_UNSPECIFIED", - "MAXIMIZE", - "MINIMIZE" - ], - "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.", - "type": "string" - }, - "maxTrials": { - "format": "int32", - "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.", - "type": "integer" + "iamOwned": { + "type": "boolean" }, - "params": { + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", "items": { - "$ref": "GoogleCloudMlV1beta1__ParameterSpec" + "$ref": "GoogleIamV1__Rule" }, - "type": "array", - "description": "Required. The set of parameters to tune." - } - }, - "id": "GoogleCloudMlV1beta1__HyperparameterSpec" - }, - "GoogleCloudMlV1__OperationMetadata": { - "description": "Represents the metadata of the long-running operation.", - "type": "object", - "properties": { - "modelName": { - "description": "Contains the name of the model associated with the operation.", - "type": "string" + "type": "array" }, "version": { - "$ref": "GoogleCloudMlV1__Version", - "description": "Contains the version associated with the operation." - }, - "endTime": { - "format": "google-datetime", - "description": "The time operation processing completed.", - "type": "string" - }, - "operationType": { - "type": "string", - "enumDescriptions": [ - "Unspecified operation type.", - "An operation to create a new version.", - "An operation to delete an existing version.", - "An operation to delete an existing model." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE_VERSION", - "DELETE_VERSION", - "DELETE_MODEL" - ], - "description": "The operation type." + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" }, - "startTime": { - "format": "google-datetime", - "description": "The time operation processing started.", - "type": "string" + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "GoogleIamV1__AuditConfig" + }, + "type": "array" }, - "isCancellationRequested": { - "description": "Indicates whether a request to cancel this operation has been made.", - "type": "boolean" + "bindings": { + "items": { + "$ref": "GoogleIamV1__Binding" + }, + "type": "array", + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." }, - "createTime": { - "format": "google-datetime", - "description": "The time the operation was submitted.", + "etag": { + "format": "byte", + "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.", "type": "string" } }, - "id": "GoogleCloudMlV1__OperationMetadata" + "id": "GoogleIamV1__Policy" }, - "GoogleCloudMlV1beta1__OperationMetadata": { - "description": "Represents the metadata of the long-running operation.", + "GoogleCloudMlV1beta1__Job": { + "description": "Represents a training or prediction job.", "type": "object", "properties": { - "version": { - "$ref": "GoogleCloudMlV1beta1__Version", - "description": "Contains the version associated with the operation." + "trainingInput": { + "description": "Input parameters to create a training job.", + "$ref": "GoogleCloudMlV1beta1__TrainingInput" }, - "endTime": { + "createTime": { "format": "google-datetime", - "description": "The time operation processing completed.", + "description": "Output only. When the job was created.", "type": "string" }, - "operationType": { - "description": "The operation type.", + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "QUEUED", + "PREPARING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLING", + "CANCELLED" + ], + "description": "Output only. The detailed state of a job.", "type": "string", "enumDescriptions": [ - "Unspecified operation type.", - "An operation to create a new version.", - "An operation to delete an existing version.", - "An operation to delete an existing model." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE_VERSION", - "DELETE_VERSION", - "DELETE_MODEL" + "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." ] }, - "startTime": { - "format": "google-datetime", - "description": "The time operation processing started.", + "predictionInput": { + "$ref": "GoogleCloudMlV1beta1__PredictionInput", + "description": "Input parameters to create a prediction job." + }, + "errorMessage": { + "description": "Output only. The details of a failure or a cancellation.", "type": "string" }, - "isCancellationRequested": { - "description": "Indicates whether a request to cancel this operation has been made.", - "type": "boolean" + "jobId": { + "description": "Required. The user-specified id of the job.", + "type": "string" }, - "createTime": { + "endTime": { + "type": "string", "format": "google-datetime", - "description": "The time the operation was submitted.", - "type": "string" + "description": "Output only. When the job processing was completed." }, - "modelName": { - "description": "Contains the name of the model associated with the operation.", + "startTime": { + "format": "google-datetime", + "description": "Output only. When the job processing was started.", "type": "string" + }, + "predictionOutput": { + "description": "The current prediction job result.", + "$ref": "GoogleCloudMlV1beta1__PredictionOutput" + }, + "trainingOutput": { + "$ref": "GoogleCloudMlV1beta1__TrainingOutput", + "description": "The current training job result." } }, - "id": "GoogleCloudMlV1beta1__OperationMetadata" + "id": "GoogleCloudMlV1beta1__Job" }, - "GoogleIamV1__AuditLogConfig": { + "GoogleLongrunning__ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "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.", + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "type": "string" + "$ref": "GoogleLongrunning__Operation" }, "type": "array" - }, - "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": "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." + "id": "GoogleLongrunning__ListOperationsResponse" }, - "GoogleType__Expr": { + "GoogleCloudMlV1beta1__TrainingInput": { "properties": { - "location": { - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", + "workerCount": { + "format": "int64", + "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.", "type": "string" }, - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", - "type": "string" + "masterType": { + "type": "string", + "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\n \u003ca href=\"/ml-engine/docs/how-tos/using-gpus\"\u003e\n GPU that you can use in your trainer\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 GPUs.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`." }, - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "runtimeVersion": { + "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose the latest stable version.", "type": "string" }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" - } - }, - "id": "GoogleType__Expr", - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object" - }, - "GoogleCloudMlV1beta1__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.", + "pythonModule": { + "description": "Required. The Python module name to run after installing the packages.", "type": "string" }, - "models": { - "description": "The list of models.", + "args": { + "description": "Optional. Command line arguments to pass to the program.", "items": { - "$ref": "GoogleCloudMlV1beta1__Model" + "type": "string" }, "type": "array" - } - }, - "id": "GoogleCloudMlV1beta1__ListModelsResponse" - }, - "GoogleLongrunning__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`.", + "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" }, - "error": { - "$ref": "GoogleRpc__Status", - "description": "The error result of the operation in case of failure or cancellation." + "region": { + "description": "Required. The Google Compute Engine region to run the training job in.", + "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" + "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" }, - "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": "GoogleLongrunning__Operation" - }, - "GoogleIamV1__AuditConfig": { - "type": "object", - "properties": { - "exemptedMembers": { + "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 GPU](/ml-engine/docs/how-tos/using-gpus).", + "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." + ], + "enum": [ + "BASIC", + "STANDARD_1", + "PREMIUM_1", + "BASIC_GPU", + "CUSTOM" + ], + "description": "Required. Specifies the machine types, the number of replicas for workers\nand parameter servers.", + "type": "string" + }, + "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": "GoogleCloudMlV1beta1__HyperparameterSpec", + "description": "Optional. The set of Hyperparameters to tune." + }, + "parameterServerCount": { + "type": "string", + "format": "int64", + "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`.If you\nset this value, you must also set `parameter_server_type`." + }, + "packageUris": { + "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.", "items": { "type": "string" }, "type": "array" - }, - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + } + }, + "id": "GoogleCloudMlV1beta1__TrainingInput", + "description": "Represents input parameters for a training job.", + "type": "object" + }, + "GoogleCloudMlV1beta1__GetConfigResponse": { + "description": "Returns service account information associated with a project.", + "type": "object", + "properties": { + "serviceAccountProject": { + "format": "int64", + "description": "The project number for `service_account`.", "type": "string" }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "items": { - "$ref": "GoogleIamV1__AuditLogConfig" - }, - "type": "array" + "serviceAccount": { + "description": "The service account Cloud ML uses to access resources in the project.", + "type": "string" } }, - "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\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + "id": "GoogleCloudMlV1beta1__GetConfigResponse" }, - "GoogleCloudMlV1beta1__HyperparameterOutput": { + "GoogleIamV1__Condition": { "properties": { - "finalMetric": { - "description": "The final objective metric seen for this trial.", - "$ref": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric" + "value": { + "type": "string", + "description": "DEPRECATED. Use 'values' instead." }, - "hyperparameters": { - "additionalProperties": { - "type": "string" - }, - "description": "The hyperparameters given to this trial.", - "type": "object" + "sys": { + "type": "string", + "enumDescriptions": [ + "Default non-attribute type", + "Region of the resource", + "Service name", + "Resource name", + "IP address of the caller" + ], + "enum": [ + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" + ], + "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control." }, - "trialId": { - "description": "The trial id for these results.", - "type": "string" + "iam": { + "type": "string", + "enumDescriptions": [ + "Default non-attribute.", + "Either principal or (if present) authority selector.", + "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", + "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", + "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." + ], + "enum": [ + "NO_ATTR", + "AUTHORITY", + "ATTRIBUTION", + "APPROVER", + "JUSTIFICATION_TYPE" + ], + "description": "Trusted attributes supplied by the IAM system." }, - "allMetrics": { - "description": "All recorded object metrics for this trial.", + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", "items": { - "$ref": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric" + "type": "string" }, "type": "array" + }, + "op": { + "type": "string", + "enumDescriptions": [ + "Default no-op.", + "DEPRECATED. Use IN instead.", + "DEPRECATED. Use NOT_IN instead.", + "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", + "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", + "Subject is discharged" + ], + "enum": [ + "NO_OP", + "EQUALS", + "NOT_EQUALS", + "IN", + "NOT_IN", + "DISCHARGED" + ], + "description": "An operator to apply the subject with." + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" } }, - "id": "GoogleCloudMlV1beta1__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.", + "id": "GoogleIamV1__Condition", + "description": "A condition to be met.", "type": "object" }, - "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 `{}`.", + "GoogleCloudMlV1beta1__SetDefaultVersionRequest": { + "description": "Request message for the SetDefaultVersion request.", "type": "object", "properties": {}, - "id": "GoogleProtobuf__Empty" - }, - "GoogleIamV1__TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "items": { - "type": "string" - }, - "type": "array", - "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" + "id": "GoogleCloudMlV1beta1__SetDefaultVersionRequest" }, - "GoogleCloudMlV1beta1__ManualScaling": { + "GoogleCloudMlV1__ManualScaling": { "description": "Options for manually scaling a model.", "type": "object", "properties": { @@ -1007,55 +1126,97 @@ "type": "integer" } }, - "id": "GoogleCloudMlV1beta1__ManualScaling" + "id": "GoogleCloudMlV1__ManualScaling" }, - "GoogleIamV1__LogConfig": { - "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1", + "GoogleIamV1__Binding": { + "description": "Associates `members` with a `role`.", "type": "object", "properties": { - "cloudAudit": { - "description": "Cloud audit options.", - "$ref": "GoogleIamV1_LogConfig_CloudAuditOptions" + "condition": { + "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.", + "$ref": "GoogleType__Expr" }, - "counter": { - "description": "Counter options.", - "$ref": "GoogleIamV1_LogConfig_CounterOptions" + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" }, - "dataAccess": { - "description": "Data access options.", - "$ref": "GoogleIamV1_LogConfig_DataAccessOptions" + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "GoogleIamV1__LogConfig" + "id": "GoogleIamV1__Binding" }, - "GoogleRpc__Status": { + "GoogleIamV1__Rule": { + "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.", + "description": { + "description": "Human-readable description of the rule.", + "type": "string" + }, + "conditions": { + "description": "Additional restrictions that must be met", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "GoogleIamV1__Condition" }, "type": "array" }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "logConfig": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", + "items": { + "$ref": "GoogleIamV1__LogConfig" + }, + "type": "array" }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" + "in": { + "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { + "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "action": { + "description": "Required", + "type": "string", + "enumDescriptions": [ + "Default no action.", + "Matching 'Entries' grant access.", + "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' deny access.", + "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' tell IAM.Check callers to generate logs." + ], + "enum": [ + "NO_ACTION", + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG" + ] + }, + "notIn": { + "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", + "items": { + "type": "string" + }, + "type": "array" } }, - "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" + "id": "GoogleIamV1__Rule", + "description": "A rule to be applied in a Policy." }, - "GoogleCloudMlV1__AutoScaling": { + "GoogleCloudMlV1beta1__AutoScaling": { "description": "Options for automatically scaling a model.", "type": "object", "properties": { @@ -1065,154 +1226,207 @@ "type": "integer" } }, - "id": "GoogleCloudMlV1__AutoScaling" + "id": "GoogleCloudMlV1beta1__AutoScaling" }, - "GoogleCloudMlV1beta1__PredictRequest": { + "GoogleIamV1_LogConfig_CounterOptions": { + "description": "Options for counters", + "type": "object", "properties": { - "httpBody": { - "$ref": "GoogleApi__HttpBody", - "description": "\nRequired. The prediction request body." + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" } }, - "id": "GoogleCloudMlV1beta1__PredictRequest", - "description": "Request for predictions to be issued against a trained model.\n\nThe body of the request is a single JSON object with a single top-level\nfield:\n\n\u003cdl\u003e\n \u003cdt\u003einstances\u003c/dt\u003e\n \u003cdd\u003eA JSON array containing values representing the instances to use for\n prediction.\u003c/dd\u003e\n\u003c/dl\u003e\n\nThe structure of each element of the instances list is determined by your\nmodel's input definition. Instances can include named inputs or can contain\nonly unlabeled values.\n\nNot all data includes named inputs. Some instances will be simple\nJSON values (boolean, number, or string). However, instances are often lists\nof simple values, or complex nested lists. Here are some examples of request\nbodies:\n\nCSV data with each row encoded as a string value:\n\u003cpre\u003e\n{\"instances\": [\"1.0,true,\\\\\"x\\\\\"\", \"-2.0,false,\\\\\"y\\\\\"\"]}\n\u003c/pre\u003e\nPlain text:\n\u003cpre\u003e\n{\"instances\": [\"the quick brown fox\", \"la bruja le dio\"]}\n\u003c/pre\u003e\nSentences encoded as lists of words (vectors of strings):\n\u003cpre\u003e\n{\n \"instances\": [\n [\"the\",\"quick\",\"brown\"],\n [\"la\",\"bruja\",\"le\"],\n ...\n ]\n}\n\u003c/pre\u003e\nFloating point scalar values:\n\u003cpre\u003e\n{\"instances\": [0.0, 1.1, 2.2]}\n\u003c/pre\u003e\nVectors of integers:\n\u003cpre\u003e\n{\n \"instances\": [\n [0, 1, 2],\n [3, 4, 5],\n ...\n ]\n}\n\u003c/pre\u003e\nTensors (in this case, two-dimensional tensors):\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [0, 1, 2],\n [3, 4, 5]\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nImages can be represented different ways. In this encoding scheme the first\ntwo dimensions represent the rows and columns of the image, and the third\ncontains lists (vectors) of the R, G, and B values for each pixel.\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nJSON strings must be encoded as UTF-8. To send binary data, you must\nbase64-encode the data and mark it as binary. To mark a JSON string\nas binary, replace it with a JSON object with a single attribute named `b64`:\n\u003cpre\u003e{\"b64\": \"...\"} \u003c/pre\u003e\nFor example:\n\nTwo Serialized tf.Examples (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"X5ad6u\"}, {\"b64\": \"IA9j4nx\"}]}\n\u003c/pre\u003e\nTwo JPEG image byte strings (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"ASa8asdf\"}, {\"b64\": \"JLK7ljk3\"}]}\n\u003c/pre\u003e\nIf your data includes named references, format each instance as a JSON object\nwith the named references as the keys:\n\nJSON input data to be preprocessed:\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"a\": 1.0,\n \"b\": true,\n \"c\": \"x\"\n },\n {\n \"a\": -2.0,\n \"b\": false,\n \"c\": \"y\"\n }\n ]\n}\n\u003c/pre\u003e\nSome models have an underlying TensorFlow graph that accepts multiple input\ntensors. In this case, you should use the names of JSON name/value pairs to\nidentify the input tensors, as shown in the following exmaples:\n\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(base64-encoded string):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": {\"b64\": \"ASa8asdf\"}\n },\n {\n \"tag\": \"car\",\n \"image\": {\"b64\": \"JLK7ljk3\"}\n }\n ]\n}\n\u003c/pre\u003e\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(3-dimensional array of 8-bit ints):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ]\n },\n {\n \"tag\": \"car\",\n \"image\": [\n [\n [255, 0, 102],\n [255, 0, 97],\n ...\n ],\n [\n [254, 1, 101],\n [254, 2, 93],\n ...\n ],\n ...\n ]\n },\n ...\n ]\n}\n\u003c/pre\u003e\nIf the call is successful, the response body will contain one prediction\nentry per instance in the request body. If prediction fails for any\ninstance, the response body will contain no predictions and will contian\na single error entry instead.", - "type": "object" + "id": "GoogleIamV1_LogConfig_CounterOptions" }, - "GoogleCloudMlV1beta1__PredictionInput": { - "description": "Represents input parameters for a prediction job.", + "GoogleCloudMlV1beta1__ParameterSpec": { + "description": "Represents a single hyperparameter to optimize.", "type": "object", "properties": { - "outputPath": { - "description": "Required. The output Google Cloud Storage location.", - "type": "string" + "minValue": { + "format": "double", + "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.", + "type": "number" }, - "maxWorkerCount": { - "format": "int64", - "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.", + "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.", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" + }, + "scaleType": { + "enumDescriptions": [ + "By default, no scaling is applied.", + "Scales the feasible space to (0, 1) linearly.", + "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.", + "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive." + ], + "enum": [ + "NONE", + "UNIT_LINEAR_SCALE", + "UNIT_LOG_SCALE", + "UNIT_REVERSE_LOG_SCALE" + ], + "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).", "type": "string" }, - "uri": { - "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", - "type": "string" + "maxValue": { + "format": "double", + "description": "Required if typeis `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.", + "type": "number" }, - "dataFormat": { + "type": { "enum": [ - "DATA_FORMAT_UNSPECIFIED", - "TEXT", - "TF_RECORD", - "TF_RECORD_GZIP" + "PARAMETER_TYPE_UNSPECIFIED", + "DOUBLE", + "INTEGER", + "CATEGORICAL", + "DISCRETE" ], - "description": "Required. The format of the input data files.", + "description": "Required. The type of the parameter.", "type": "string", "enumDescriptions": [ - "Unspecified format.", - "The source file is a text file with instances separated by the\nnew-line character.", - "The source file is a TFRecord file.", - "The source file is a GZIP-compressed TFRecord file." + "You must specify a valid type. Using this unspecified type will result in\nan error.", + "Type for real-valued parameters.", + "Type for integral parameters.", + "The parameter is categorical, with a value chosen from the categories\nfield.", + "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored." ] }, - "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.", + "parameterName": { + "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".", "type": "string" }, - "inputPaths": { - "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.", + "categoricalValues": { "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "Required if type is `CATEGORICAL`. The list of possible categories." + } + }, + "id": "GoogleCloudMlV1beta1__ParameterSpec" + }, + "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric": { + "properties": { + "objectiveValue": { + "format": "double", + "description": "The objective value at this training step.", + "type": "number" }, - "region": { - "description": "Required. The Google Compute Engine region to run the prediction job in.", + "trainingStep": { + "format": "int64", + "description": "The global training step for this metric.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric", + "description": "An observed value of a metric.", + "type": "object" + }, + "GoogleCloudMlV1beta1__PredictionOutput": { + "description": "Represents results of a prediction job.", + "type": "object", + "properties": { + "errorCount": { + "format": "int64", + "description": "The number of data instances which resulted in errors.", "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/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003eYOUR_MODEL/versions/\u003cvar\u003e[YOUR_VERSION]\u003c/var\u003e\"`", + "nodeHours": { + "format": "double", + "description": "Node hours used by the batch prediction job.", + "type": "number" + }, + "outputPath": { + "description": "The output Google Cloud Storage location provided at the job creation time.", "type": "string" }, - "modelName": { - "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003e[YOUR_MODEL]\u003c/var\u003e\"`", + "predictionCount": { + "format": "int64", + "description": "The number of generated predictions.", "type": "string" } }, - "id": "GoogleCloudMlV1beta1__PredictionInput" + "id": "GoogleCloudMlV1beta1__PredictionOutput" }, - "GoogleApi__HttpBody": { - "id": "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.", + "GoogleCloudMlV1beta1__TrainingOutput": { "type": "object", "properties": { - "contentType": { - "type": "string", - "description": "The HTTP Content-Type string representing the content type of the body." + "completedTrialCount": { + "format": "int64", + "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.", + "type": "string" }, - "extensions": { + "isHyperparameterTuningJob": { + "description": "Whether this job is a hyperparameter tuning job.", + "type": "boolean" + }, + "consumedMLUnits": { + "format": "double", + "description": "The amount of ML units consumed by the job.", + "type": "number" + }, + "trials": { + "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "GoogleCloudMlV1beta1__HyperparameterOutput" }, - "type": "array", - "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs." - }, - "data": { - "format": "byte", - "description": "HTTP body binary data.", - "type": "string" + "type": "array" } - } + }, + "id": "GoogleCloudMlV1beta1__TrainingOutput", + "description": "Represents results of a training job. Output only." }, - "GoogleCloudMlV1beta1__ListVersionsResponse": { + "GoogleIamV1_LogConfig_CloudAuditOptions": { "properties": { - "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + "logName": { + "enumDescriptions": [ + "Default. Should not be used.", + "Corresponds to \"cloudaudit.googleapis.com/activity\"", + "Corresponds to \"cloudaudit.googleapis.com/data_access\"" + ], + "enum": [ + "UNSPECIFIED_LOG_NAME", + "ADMIN_ACTIVITY", + "DATA_ACCESS" + ], + "description": "The log_name to populate in the Cloud Audit Record.", "type": "string" }, - "versions": { - "description": "The list of versions.", - "items": { - "$ref": "GoogleCloudMlV1beta1__Version" - }, - "type": "array" + "isReadPermissionType": { + "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", + "type": "boolean" } }, - "id": "GoogleCloudMlV1beta1__ListVersionsResponse", - "description": "Response message for the ListVersions method.", + "id": "GoogleIamV1_LogConfig_CloudAuditOptions", + "description": "Write a Cloud Audit log", "type": "object" }, - "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/list).", + "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": { - "errorMessage": { - "description": "Output only. The details of a failure or a cancellation.", - "type": "string" - }, - "lastUseTime": { - "format": "google-datetime", - "description": "Output only. The time the version was last used for prediction.", - "type": "string" - }, - "runtimeVersion": { - "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" }, "deploymentUri": { - "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) for more\ninformation.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/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.", + "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) 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" }, "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/v1beta1/projects.models.versions/setDefault).", + "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" }, "autoScaling": { - "$ref": "GoogleCloudMlV1beta1__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." }, "createTime": { @@ -1221,12 +1435,6 @@ "type": "string" }, "state": { - "enumDescriptions": [ - "The version state is unspecified.", - "The version is ready for prediction.", - "The version is still in the process of creation.", - "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." - ], "enum": [ "UNKNOWN", "READY", @@ -1234,874 +1442,666 @@ "FAILED" ], "description": "Output only. The state of a version.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "The version state is unspecified.", + "The version is ready for prediction.", + "The version is still in the process of creation.", + "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." + ] }, "manualScaling": { - "$ref": "GoogleCloudMlV1beta1__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." + "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" - } - }, - "id": "GoogleCloudMlV1beta1__Version" - }, - "GoogleCloudMlV1beta1__ListJobsResponse": { - "description": "Response message for the ListJobs method.", - "type": "object", - "properties": { - "jobs": { - "items": { - "$ref": "GoogleCloudMlV1beta1__Job" - }, - "type": "array", - "description": "The list of jobs." }, - "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + "errorMessage": { + "description": "Output only. The details of a failure or a cancellation.", + "type": "string" + }, + "lastUseTime": { + "type": "string", + "format": "google-datetime", + "description": "Output only. The time the version was last used for prediction." + }, + "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" } }, - "id": "GoogleCloudMlV1beta1__ListJobsResponse" + "id": "GoogleCloudMlV1__Version" }, - "GoogleIamV1__TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", + "GoogleIamV1_LogConfig_DataAccessOptions": { "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "GoogleIamV1__TestIamPermissionsResponse" + "properties": {}, + "id": "GoogleIamV1_LogConfig_DataAccessOptions", + "description": "Write a Data Access (Gin) log" }, - "GoogleIamV1__SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", + "GoogleCloudMlV1beta1__HyperparameterSpec": { + "id": "GoogleCloudMlV1beta1__HyperparameterSpec", + "description": "Represents a set of hyperparameters to optimize.", "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" + "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" + }, + "goal": { + "enum": [ + "GOAL_TYPE_UNSPECIFIED", + "MAXIMIZE", + "MINIMIZE" + ], + "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.", + "type": "string", + "enumDescriptions": [ + "Goal Type will default to maximize.", + "Maximize the goal metric.", + "Minimize the goal metric." + ] + }, + "maxTrials": { + "format": "int32", + "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.", + "type": "integer" + }, + "params": { + "description": "Required. The set of parameters to tune.", + "items": { + "$ref": "GoogleCloudMlV1beta1__ParameterSpec" + }, + "type": "array" }, - "updateMask": { - "format": "google-fieldmask", - "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.", - "type": "string" + "maxParallelTrials": { + "format": "int32", + "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.", + "type": "integer" } - }, - "id": "GoogleIamV1__SetIamPolicyRequest" - }, - "GoogleCloudMlV1beta1__CancelJobRequest": { - "description": "Request message for the CancelJob method.", - "type": "object", - "properties": {}, - "id": "GoogleCloudMlV1beta1__CancelJobRequest" + } }, - "GoogleCloudMlV1beta1__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.", + "GoogleCloudMlV1__OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", "type": "object", "properties": { - "name": { - "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" + "isCancellationRequested": { + "description": "Indicates whether a request to cancel this operation has been made.", + "type": "boolean" }, - "description": { - "description": "Optional. The description specified for the model when it was created.", + "createTime": { + "format": "google-datetime", + "description": "The time the operation was submitted.", "type": "string" }, - "onlinePredictionLogging": { - "description": "Optional. If true, enables StackDriver Logging for online prediction.\nDefault is false.", - "type": "boolean" + "modelName": { + "description": "Contains the name of the model associated with the operation.", + "type": "string" }, - "defaultVersion": { - "$ref": "GoogleCloudMlV1beta1__Version", - "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/v1beta1/projects.models.versions/setDefault)." + "version": { + "$ref": "GoogleCloudMlV1__Version", + "description": "Contains the version associated with the operation." }, - "regions": { - "items": { - "type": "string" - }, - "type": "array", - "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.\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." - } - }, - "id": "GoogleCloudMlV1beta1__Model" - } - }, - "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 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", - "title": "Google Cloud Machine Learning Engine", - "ownerName": "Google", - "resources": { - "projects": { - "methods": { - "getConfig": { - "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account persmissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.", - "response": { - "$ref": "GoogleCloudMlV1beta1__GetConfigResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project name.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}:getConfig", - "id": "ml.projects.getConfig", - "path": "v1beta1/{+name}:getConfig" + "endTime": { + "format": "google-datetime", + "description": "The time operation processing completed.", + "type": "string" }, - "predict": { - "response": { - "$ref": "GoogleApi__HttpBody" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.", - "type": "string", - "required": true, - "pattern": "^projects/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}:predict", - "id": "ml.projects.predict", - "path": "v1beta1/{+name}:predict", - "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION", - "request": { - "$ref": "GoogleCloudMlV1beta1__PredictRequest" - } - } - }, - "resources": { - "jobs": { - "methods": { - "cancel": { - "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}:cancel", - "id": "ml.projects.jobs.cancel", - "path": "v1beta1/{+name}:cancel", - "description": "Cancels a running job.", - "request": { - "$ref": "GoogleCloudMlV1beta1__CancelJobRequest" - }, - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the job to cancel.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/jobs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudMlV1beta1__Job" - }, - "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required. The name of the job to get the description of.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/jobs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}", - "path": "v1beta1/{+name}", - "id": "ml.projects.jobs.get", - "description": "Describes a job." - }, - "list": { - "response": { - "$ref": "GoogleCloudMlV1beta1__ListJobsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "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", - "format": "int32", - "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.", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "Required. The name of the project for which to list jobs.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - }, - "filter": { - "location": "query", - "description": "Optional. Specifies the subset of jobs to retrieve.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/jobs", - "id": "ml.projects.jobs.list", - "path": "v1beta1/{+parent}/jobs", - "description": "Lists the jobs in the project." - }, - "create": { - "flatPath": "v1beta1/projects/{projectsId}/jobs", - "path": "v1beta1/{+parent}/jobs", - "id": "ml.projects.jobs.create", - "description": "Creates a training or a batch prediction job.", - "request": { - "$ref": "GoogleCloudMlV1beta1__Job" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudMlV1beta1__Job" - }, - "parameters": { - "parent": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project name." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } + "operationType": { + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE_VERSION", + "DELETE_VERSION", + "DELETE_MODEL" + ], + "description": "The operation type.", + "type": "string", + "enumDescriptions": [ + "Unspecified operation type.", + "An operation to create a new version.", + "An operation to delete an existing version.", + "An operation to delete an existing model." + ] }, - "models": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameterOrder": [ - "name" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path", - "description": "Required. The name of the model.", - "type": "string", - "required": true - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}", - "path": "v1beta1/{+name}", - "id": "ml.projects.models.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/v1beta1/projects.models.versions/delete)." - }, - "list": { - "flatPath": "v1beta1/projects/{projectsId}/models", - "id": "ml.projects.models.list", - "path": "v1beta1/{+parent}/models", - "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.", - "response": { - "$ref": "GoogleCloudMlV1beta1__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": { - "format": "int32", - "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.", - "type": "integer", - "location": "query" - }, - "parent": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The name of the project whose models are to be listed." - } - } - }, - "setIamPolicy": { - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:setIamPolicy", - "id": "ml.projects.models.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$" - } - } - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudMlV1beta1__Model" - }, - "parameters": { - "parent": { - "description": "Required. The project name.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/models", - "path": "v1beta1/{+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/v1beta1/projects.models.versions/create).", - "request": { - "$ref": "GoogleCloudMlV1beta1__Model" - } - }, - "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", - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameterOrder": [ - "resource" - ], - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "id": "ml.projects.models.getIamPolicy" - }, - "get": { - "response": { - "$ref": "GoogleCloudMlV1beta1__Model" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required. The name of the model.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}", - "id": "ml.projects.models.get", - "path": "v1beta1/{+name}", - "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)." - }, - "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": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$", - "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": "v1beta1/projects/{projectsId}/models/{modelsId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "ml.projects.models.testIamPermissions" - } + "startTime": { + "format": "google-datetime", + "description": "The time operation processing started.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1__OperationMetadata" + }, + "GoogleCloudMlV1beta1__OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "type": "object", + "properties": { + "modelName": { + "description": "Contains the name of the model associated with the operation.", + "type": "string" + }, + "version": { + "$ref": "GoogleCloudMlV1beta1__Version", + "description": "Contains the version associated with the operation." + }, + "endTime": { + "format": "google-datetime", + "description": "The time operation processing completed.", + "type": "string" + }, + "operationType": { + "description": "The operation type.", + "type": "string", + "enumDescriptions": [ + "Unspecified operation type.", + "An operation to create a new version.", + "An operation to delete an existing version.", + "An operation to delete an existing model." + ], + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE_VERSION", + "DELETE_VERSION", + "DELETE_MODEL" + ] + }, + "startTime": { + "format": "google-datetime", + "description": "The time operation processing started.", + "type": "string" + }, + "isCancellationRequested": { + "type": "boolean", + "description": "Indicates whether a request to cancel this operation has been made." + }, + "createTime": { + "format": "google-datetime", + "description": "The time the operation was submitted.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1beta1__OperationMetadata" + }, + "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": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" }, - "resources": { - "versions": { - "methods": { - "get": { - "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/v1beta1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleCloudMlV1beta1__Version" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the version.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "path": "v1beta1/{+name}", - "id": "ml.projects.models.versions.get" - }, - "list": { - "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has a lot of 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):", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudMlV1beta1__ListVersionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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." - }, - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, - "parent": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path", - "description": "Required. The name of the model for which to list the version." - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions", - "path": "v1beta1/{+parent}/versions", - "id": "ml.projects.models.versions.list" - }, - "create": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The name of the model.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions", - "id": "ml.projects.models.versions.create", - "path": "v1beta1/{+parent}/versions", - "request": { - "$ref": "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/setDefault).", - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - }, - "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": "GoogleCloudMlV1beta1__SetDefaultVersionRequest" - }, - "response": { - "$ref": "GoogleCloudMlV1beta1__Version" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "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/v1beta1/projects.models.versions/list).\n\nAuthorization: `ml.models.update` permission is required on the parent model.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault", - "id": "ml.projects.models.versions.setDefault", - "path": "v1beta1/{+name}:setDefault" - }, - "delete": { - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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/v1beta1/projects.models.versions/list).", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "id": "ml.projects.models.versions.delete", - "path": "v1beta1/{+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." - } - } - } - } + "type": "array" + }, + "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": "GoogleIamV1__AuditLogConfig" + }, + "GoogleType__Expr": { + "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", + "type": "object", + "properties": { + "location": { + "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", + "type": "string" + }, + "description": { + "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", + "type": "string" + } + }, + "id": "GoogleType__Expr" + }, + "GoogleCloudMlV1beta1__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.", + "type": "string" + }, + "models": { + "description": "The list of models.", + "items": { + "$ref": "GoogleCloudMlV1beta1__Model" + }, + "type": "array" + } + }, + "id": "GoogleCloudMlV1beta1__ListModelsResponse" + }, + "GoogleLongrunning__Operation": { + "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": { + "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": { + "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": "GoogleRpc__Status", + "description": "The error result of the operation in case of failure or cancellation." + } + }, + "id": "GoogleLongrunning__Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + }, + "GoogleIamV1__AuditConfig": { + "type": "object", + "properties": { + "exemptedMembers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", + "type": "string" + }, + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "GoogleIamV1__AuditLogConfig" + }, + "type": "array" + } + }, + "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\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + }, + "GoogleCloudMlV1beta1__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": { + "additionalProperties": { + "type": "string" + }, + "description": "The hyperparameters given to this trial.", + "type": "object" }, - "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.", - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource." - } - }, - "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}", - "id": "ml.projects.operations.get", - "path": "v1beta1/{+name}" - }, - "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": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The name of the operation's parent resource." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/operations", - "path": "v1beta1/{+name}/operations", - "id": "ml.projects.operations.list" - }, - "cancel": { - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}:cancel", - "id": "ml.projects.operations.cancel", - "path": "v1beta1/{+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": { - "path": "v1beta1/{+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`.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameters": { - "name": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource to be deleted." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}" - } - } + "trialId": { + "description": "The trial id for these results.", + "type": "string" + }, + "allMetrics": { + "description": "All recorded object metrics for this trial.", + "items": { + "$ref": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric" + }, + "type": "array" + }, + "finalMetric": { + "$ref": "GoogleCloudMlV1beta1_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" + }, + "id": "GoogleCloudMlV1beta1__HyperparameterOutput" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" + "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" }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "GoogleIamV1__TestIamPermissionsRequest" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "GoogleCloudMlV1beta1__ManualScaling": { + "description": "Options for manually scaling a model.", + "type": "object", + "properties": { + "nodes": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "GoogleCloudMlV1beta1__ManualScaling" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "GoogleIamV1__LogConfig": { + "id": "GoogleIamV1__LogConfig", + "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1", + "type": "object", + "properties": { + "dataAccess": { + "$ref": "GoogleIamV1_LogConfig_DataAccessOptions", + "description": "Data access options." + }, + "cloudAudit": { + "$ref": "GoogleIamV1_LogConfig_CloudAuditOptions", + "description": "Cloud audit options." + }, + "counter": { + "$ref": "GoogleIamV1_LogConfig_CounterOptions", + "description": "Counter options." + } + } }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" }, - "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" + "GoogleCloudMlV1__AutoScaling": { + "properties": { + "minNodes": { + "format": "int32", + "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\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_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.", + "type": "integer" + } + }, + "id": "GoogleCloudMlV1__AutoScaling", + "description": "Options for automatically scaling a model.", + "type": "object" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "GoogleCloudMlV1beta1__PredictRequest": { + "properties": { + "httpBody": { + "$ref": "GoogleApi__HttpBody", + "description": "\nRequired. The prediction request body." + } + }, + "id": "GoogleCloudMlV1beta1__PredictRequest", + "description": "Request for predictions to be issued against a trained model.\n\nThe body of the request is a single JSON object with a single top-level\nfield:\n\n\u003cdl\u003e\n \u003cdt\u003einstances\u003c/dt\u003e\n \u003cdd\u003eA JSON array containing values representing the instances to use for\n prediction.\u003c/dd\u003e\n\u003c/dl\u003e\n\nThe structure of each element of the instances list is determined by your\nmodel's input definition. Instances can include named inputs or can contain\nonly unlabeled values.\n\nNot all data includes named inputs. Some instances will be simple\nJSON values (boolean, number, or string). However, instances are often lists\nof simple values, or complex nested lists. Here are some examples of request\nbodies:\n\nCSV data with each row encoded as a string value:\n\u003cpre\u003e\n{\"instances\": [\"1.0,true,\\\\\"x\\\\\"\", \"-2.0,false,\\\\\"y\\\\\"\"]}\n\u003c/pre\u003e\nPlain text:\n\u003cpre\u003e\n{\"instances\": [\"the quick brown fox\", \"la bruja le dio\"]}\n\u003c/pre\u003e\nSentences encoded as lists of words (vectors of strings):\n\u003cpre\u003e\n{\n \"instances\": [\n [\"the\",\"quick\",\"brown\"],\n [\"la\",\"bruja\",\"le\"],\n ...\n ]\n}\n\u003c/pre\u003e\nFloating point scalar values:\n\u003cpre\u003e\n{\"instances\": [0.0, 1.1, 2.2]}\n\u003c/pre\u003e\nVectors of integers:\n\u003cpre\u003e\n{\n \"instances\": [\n [0, 1, 2],\n [3, 4, 5],\n ...\n ]\n}\n\u003c/pre\u003e\nTensors (in this case, two-dimensional tensors):\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [0, 1, 2],\n [3, 4, 5]\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nImages can be represented different ways. In this encoding scheme the first\ntwo dimensions represent the rows and columns of the image, and the third\ncontains lists (vectors) of the R, G, and B values for each pixel.\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nJSON strings must be encoded as UTF-8. To send binary data, you must\nbase64-encode the data and mark it as binary. To mark a JSON string\nas binary, replace it with a JSON object with a single attribute named `b64`:\n\u003cpre\u003e{\"b64\": \"...\"} \u003c/pre\u003e\nFor example:\n\nTwo Serialized tf.Examples (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"X5ad6u\"}, {\"b64\": \"IA9j4nx\"}]}\n\u003c/pre\u003e\nTwo JPEG image byte strings (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"ASa8asdf\"}, {\"b64\": \"JLK7ljk3\"}]}\n\u003c/pre\u003e\nIf your data includes named references, format each instance as a JSON object\nwith the named references as the keys:\n\nJSON input data to be preprocessed:\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"a\": 1.0,\n \"b\": true,\n \"c\": \"x\"\n },\n {\n \"a\": -2.0,\n \"b\": false,\n \"c\": \"y\"\n }\n ]\n}\n\u003c/pre\u003e\nSome models have an underlying TensorFlow graph that accepts multiple input\ntensors. In this case, you should use the names of JSON name/value pairs to\nidentify the input tensors, as shown in the following exmaples:\n\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(base64-encoded string):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": {\"b64\": \"ASa8asdf\"}\n },\n {\n \"tag\": \"car\",\n \"image\": {\"b64\": \"JLK7ljk3\"}\n }\n ]\n}\n\u003c/pre\u003e\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(3-dimensional array of 8-bit ints):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ]\n },\n {\n \"tag\": \"car\",\n \"image\": [\n [\n [255, 0, 102],\n [255, 0, 97],\n ...\n ],\n [\n [254, 1, 101],\n [254, 2, 93],\n ...\n ],\n ...\n ]\n },\n ...\n ]\n}\n\u003c/pre\u003e\nIf the call is successful, the response body will contain one prediction\nentry per instance in the request body. If prediction fails for any\ninstance, the response body will contain no predictions and will contian\na single error entry instead.", + "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" + "GoogleCloudMlV1beta1__PredictionInput": { + "description": "Represents input parameters for a prediction job.", + "type": "object", + "properties": { + "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/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003eYOUR_MODEL/versions/\u003cvar\u003e[YOUR_VERSION]\u003c/var\u003e\"`", + "type": "string" + }, + "modelName": { + "type": "string", + "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003e[YOUR_MODEL]\u003c/var\u003e\"`" + }, + "outputPath": { + "description": "Required. The output Google Cloud Storage location.", + "type": "string" + }, + "maxWorkerCount": { + "format": "int64", + "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.", + "type": "string" + }, + "uri": { + "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", + "type": "string" + }, + "dataFormat": { + "enumDescriptions": [ + "Unspecified format.", + "The source file is a text file with instances separated by the\nnew-line character.", + "The source file is a TFRecord file.", + "The source file is a GZIP-compressed TFRecord file." + ], + "enum": [ + "DATA_FORMAT_UNSPECIFIED", + "TEXT", + "TF_RECORD", + "TF_RECORD_GZIP" + ], + "description": "Required. The format of the input data files.", + "type": "string" + }, + "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" + }, + "inputPaths": { + "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "Required. The Google Compute Engine region to run the prediction job in.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1beta1__PredictionInput" }, - "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" + "GoogleApi__HttpBody": { + "properties": { + "extensions": { + "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "data": { + "format": "byte", + "description": "HTTP body binary data.", + "type": "string" + }, + "contentType": { + "description": "The HTTP Content-Type string representing the content type of the body.", + "type": "string" + } + }, + "id": "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" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" + "GoogleCloudMlV1beta1__ListVersionsResponse": { + "description": "Response message for the ListVersions method.", + "type": "object", + "properties": { + "versions": { + "description": "The list of versions.", + "items": { + "$ref": "GoogleCloudMlV1beta1__Version" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1beta1__ListVersionsResponse" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "GoogleCloudMlV1beta1__Version": { + "type": "object", + "properties": { + "lastUseTime": { + "format": "google-datetime", + "description": "Output only. The time the version was last used for prediction.", + "type": "string" + }, + "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" + }, + "description": { + "description": "Optional. The description specified for the version when it was created.", + "type": "string" + }, + "deploymentUri": { + "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) for more\ninformation.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/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" + }, + "isDefault": { + "type": "boolean", + "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/v1beta1/projects.models.versions/setDefault)." + }, + "autoScaling": { + "$ref": "GoogleCloudMlV1beta1__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." + }, + "createTime": { + "format": "google-datetime", + "description": "Output only. The time the version was created.", + "type": "string" + }, + "state": { + "enumDescriptions": [ + "The version state is unspecified.", + "The version is ready for prediction.", + "The version is still in the process of creation.", + "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure." + ], + "enum": [ + "UNKNOWN", + "READY", + "CREATING", + "FAILED" + ], + "description": "Output only. The state of a version.", + "type": "string" + }, + "manualScaling": { + "$ref": "GoogleCloudMlV1beta1__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." + }, + "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" + }, + "errorMessage": { + "description": "Output only. The details of a failure or a cancellation.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1beta1__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/v1beta1/projects.models.versions/list)." }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." + "GoogleCloudMlV1beta1__ListJobsResponse": { + "description": "Response message for the ListJobs method.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call." + }, + "jobs": { + "items": { + "$ref": "GoogleCloudMlV1beta1__Job" + }, + "type": "array", + "description": "The list of jobs." + } + }, + "id": "GoogleCloudMlV1beta1__ListJobsResponse" + }, + "GoogleIamV1__TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "GoogleIamV1__TestIamPermissionsResponse" } }, - "version": "v1beta1", - "baseUrl": "https://ml.googleapis.com/", - "kind": "discovery#restDescription", - "description": "An API to enable creating and using machine learning models.", - "servicePath": "", - "basePath": "", - "id": "ml:v1beta1", - "documentationLink": "https://cloud.google.com/ml/", - "revision": "20170707" + "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 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", + "title": "Google Cloud Machine Learning Engine" } diff --git a/DiscoveryJson/monitoring_v3.json b/DiscoveryJson/monitoring_v3.json index dfa5576cb8..fde85b83ef 100644 --- a/DiscoveryJson/monitoring_v3.json +++ b/DiscoveryJson/monitoring_v3.json @@ -1,760 +1,123 @@ { - "ownerDomain": "google.com", - "name": "monitoring", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Monitoring API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "monitoredResourceDescriptors": { - "methods": { - "get": { - "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}", - "id": "monitoring.projects.monitoredResourceDescriptors.get", - "path": "v3/{+name}", - "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", - "response": { - "$ref": "MonitoredResourceDescriptor" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$", - "location": "path", - "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read", - "https://www.googleapis.com/auth/monitoring.write" - ] - }, - "list": { - "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors", - "id": "monitoring.projects.monitoredResourceDescriptors.list", - "path": "v3/{+name}/monitoredResourceDescriptors", - "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.", - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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" - }, - "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" - }, - "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageSize": { - "type": "integer", - "location": "query", - "format": "int32", - "description": "A positive number that is the maximum number of results to return." - } - }, - "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" - ] - } - } - }, - "groups": { - "methods": { - "delete": { - "description": "Deletes an existing group.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "parameters": { - "name": { - "location": "path", - "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/groups/[^/]+$" - } - }, - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", - "id": "monitoring.projects.groups.delete", - "path": "v3/{+name}" - }, - "get": { - "description": "Gets a single group.", - "httpMethod": "GET", - "response": { - "$ref": "Group" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path", - "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "type": "string", - "required": true - } - }, - "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/{groupsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.groups.get" - }, - "list": { - "parameters": { - "descendantsOfGroup": { - "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "A positive number that is the maximum number of results to return.", - "type": "integer" - }, - "ancestorsOfGroup": { - "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.", - "type": "string" - }, - "name": { - "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "childrenOfGroup": { - "location": "query", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ], - "flatPath": "v3/projects/{projectsId}/groups", - "path": "v3/{+name}/groups", - "id": "monitoring.projects.groups.list", - "description": "Lists the existing groups.", - "httpMethod": "GET", - "response": { - "$ref": "ListGroupsResponse" - }, - "parameterOrder": [ - "name" - ] - }, - "update": { - "description": "Updates an existing group. You can change any group attributes except name.", - "request": { - "$ref": "Group" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Group" - }, - "parameters": { - "validateOnly": { - "type": "boolean", - "location": "query", - "description": "If true, validate this request but do not update the existing group." - }, - "name": { - "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - } - }, - "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": { - "request": { - "$ref": "Group" - }, - "description": "Creates a new group.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Group" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "parameters": { - "validateOnly": { - "location": "query", - "description": "If true, validate this request but do not create the group.", - "type": "boolean" - }, - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true - } - }, - "flatPath": "v3/projects/{projectsId}/groups", - "path": "v3/{+name}/groups", - "id": "monitoring.projects.groups.create" - } - }, - "resources": { - "members": { - "methods": { - "list": { - "parameters": { - "name": { - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path", - "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "type": "string", - "required": true - }, - "interval.endTime": { - "format": "google-datetime", - "description": "Required. The end of the time interval.", - "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": { - "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": { - "format": "int32", - "description": "A positive number that is the maximum number of results to return.", - "type": "integer", - "location": "query" - }, - "interval.startTime": { - "location": "query", - "format": "google-datetime", - "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.", - "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/{groupsId}/members", - "id": "monitoring.projects.groups.members.list", - "path": "v3/{+name}/members", - "description": "Lists the monitored resources that are members of a group.", - "response": { - "$ref": "ListGroupMembersResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - } - } - } - } - }, - "collectdTimeSeries": { - "methods": { - "create": { - "id": "monitoring.projects.collectdTimeSeries.create", - "path": "v3/{+name}/collectdTimeSeries", - "request": { - "$ref": "CreateCollectdTimeSeriesRequest" - }, - "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v3/projects/{projectsId}/collectdTimeSeries" - } - } - }, - "timeSeries": { - "methods": { - "list": { - "flatPath": "v3/projects/{projectsId}/timeSeries", - "path": "v3/{+name}/timeSeries", - "id": "monitoring.projects.timeSeries.list", - "description": "Lists time series that match a filter. This method does not require a Stackdriver account.", - "httpMethod": "GET", - "response": { - "$ref": "ListTimeSeriesResponse" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "interval.endTime": { - "format": "google-datetime", - "description": "Required. The end of the time interval.", - "type": "string", - "location": "query" - }, - "aggregation.alignmentPeriod": { - "type": "string", - "location": "query", - "format": "google-duration", - "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." - }, - "pageSize": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, - "orderBy": { - "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.", - "type": "string", - "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_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": { - "description": "A monitoring filter that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND\n metric.label.instance_name = \"my-instance-name\"\n", - "type": "string", - "location": "query" - }, - "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" - }, - "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_FRACTION_TRUE", - "ALIGN_PERCENTILE_99", - "ALIGN_PERCENTILE_95", - "ALIGN_PERCENTILE_50", - "ALIGN_PERCENTILE_05" - ], - "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" - }, - "interval.startTime": { - "location": "query", - "format": "google-datetime", - "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.", - "type": "string" - }, - "view": { - "location": "query", - "enum": [ - "FULL", - "HEADERS" - ], - "description": "Specifies which information is returned about the time series.", - "type": "string" - }, - "aggregation.groupByFields": { - "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.", - "type": "string", - "repeated": true, - "location": "query" - }, - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ] - }, - "create": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v3/projects/{projectsId}/timeSeries", - "id": "monitoring.projects.timeSeries.create", - "path": "v3/{+name}/timeSeries", - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - } - } - }, - "metricDescriptors": { - "methods": { - "create": { - "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics.", - "request": { - "$ref": "MetricDescriptor" - }, - "response": { - "$ref": "MetricDescriptor" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "type": "string", - "required": true, - "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.write" - ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.create", - "path": "v3/{+name}/metricDescriptors" - }, - "delete": { - "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "parameters": { - "name": { - "location": "path", - "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example of {metric_id} is: \"custom.googleapis.com/my_test_metric\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/metricDescriptors/.+$" - } - }, - "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.metricDescriptors.delete" - }, - "get": { - "id": "monitoring.projects.metricDescriptors.get", - "path": "v3/{+name}", - "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.", - "response": { - "$ref": "MetricDescriptor" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read", - "https://www.googleapis.com/auth/monitoring.write" - ], - "parameters": { - "name": { - "location": "path", - "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/metricDescriptors/.+$" - } - }, - "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}" - }, - "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" - ], - "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" - }, - "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": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageSize": { - "format": "int32", - "description": "A positive number that is the maximum number of results to return.", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v3/projects/{projectsId}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.list", - "path": "v3/{+name}/metricDescriptors", - "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", - "response": { - "$ref": "ListMetricDescriptorsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - } - } + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "MonitoredResourceDescriptor": { + "properties": { + "labels": { + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array", + "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\"." + }, + "name": { + "type": "string", + "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}\"." + }, + "description": { + "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", + "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" + }, + "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" } - } - } - }, - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query" - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" + }, + "id": "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" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" + "TypedValue": { + "description": "A single strongly-typed value.", + "type": "object", + "properties": { + "doubleValue": { + "type": "number", + "format": "double", + "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10\u003csup\u003e±300\u003c/sup\u003e and it has 16 significant digits of precision." + }, + "int64Value": { + "format": "int64", + "description": "A 64-bit integer. Its range is approximately ±9.2x10\u003csup\u003e18\u003c/sup\u003e.", + "type": "string" + }, + "distributionValue": { + "description": "A distribution value.", + "$ref": "Distribution" + }, + "stringValue": { + "description": "A variable-length string value.", + "type": "string" + }, + "boolValue": { + "description": "A Boolean value: true or false.", + "type": "boolean" + } + }, + "id": "TypedValue" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "CollectdPayload": { + "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", + "type": "object", + "properties": { + "type": { + "description": "The measurement type. Example: \"memory\".", + "type": "string" + }, + "metadata": { + "description": "The measurement metadata. Example: \"process_id\" -\u003e 12345", + "type": "object", + "additionalProperties": { + "$ref": "TypedValue" + } + }, + "plugin": { + "description": "The name of the plugin. Example: \"disk\".", + "type": "string" + }, + "pluginInstance": { + "description": "The instance name of the plugin Example: \"hdcl\".", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "The end time of the interval.", + "type": "string" + }, + "startTime": { + "type": "string", + "format": "google-datetime", + "description": "The start time of the interval." + }, + "values": { + "description": "The measured values during this time interval. Each value must have a different dataSourceName.", + "items": { + "$ref": "CollectdValue" + }, + "type": "array" + }, + "typeInstance": { + "type": "string", + "description": "The measurement type instance. Example: \"used\"." + } + }, + "id": "CollectdPayload" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "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": "", - "documentationLink": "https://cloud.google.com/monitoring/api/", - "id": "monitoring:v3", - "revision": "20170711", - "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": { + "offset": { + "format": "double", + "description": "Lower bound of the first bucket.", + "type": "number" + }, "numFiniteBuckets": { "format": "int32", "description": "Must be greater than 0.", @@ -764,32 +127,20 @@ "format": "double", "description": "Must be greater than 0.", "type": "number" - }, - "offset": { - "format": "double", - "description": "Lower bound of the first bucket.", - "type": "number" } - }, - "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" + } }, "Option": { "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.", "type": "object", "properties": { "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.", - "type": "object" + } }, "name": { "description": "The option's name. For protobuf built-in options (options defined in descriptor.proto), this is the short name. For example, \"map_entry\". For custom options, it should be the fully-qualified name. For example, \"google.api.http\".", @@ -798,25 +149,13 @@ }, "id": "Option" }, - "TimeInterval": { - "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time.", - "type": "object", - "properties": { - "endTime": { - "format": "google-datetime", - "description": "Required. The end of the time interval.", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "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.", - "type": "string" - } - }, - "id": "TimeInterval" + "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": {} }, "Explicit": { - "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", "properties": { @@ -828,26 +167,44 @@ }, "type": "array" } + }, + "id": "Explicit" + }, + "TimeInterval": { + "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", + "properties": { + "startTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "Required. The end of the time interval.", + "type": "string" + } } }, "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": { + "format": "int32", + "description": "Must be greater than 0.", + "type": "integer" + }, "growthFactor": { + "type": "number", "format": "double", - "description": "Must be greater than 1.", - "type": "number" + "description": "Must be greater than 1." }, "scale": { "format": "double", "description": "Must be greater than 0.", "type": "number" - }, - "numFiniteBuckets": { - "type": "integer", - "format": "int32", - "description": "Must be greater than 0." } }, "id": "Exponential" @@ -867,20 +224,35 @@ }, "id": "Point" }, + "Metric": { + "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.", + "type": "object", + "properties": { + "type": { + "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values.", + "type": "object" + } + }, + "id": "Metric" + }, "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 types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".", + "jsonName": { + "description": "The field JSON name.", "type": "string" }, - "number": { - "format": "int32", - "description": "The field number.", - "type": "integer" - }, "kind": { + "description": "The field type.", + "type": "string", "enumDescriptions": [ "Field type unknown.", "Field type double.", @@ -922,13 +294,7 @@ "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.", @@ -947,6 +313,7 @@ "type": "boolean" }, "cardinality": { + "type": "string", "enumDescriptions": [ "For fields with unknown cardinality.", "For optional fields.", @@ -959,8 +326,7 @@ "CARDINALITY_REQUIRED", "CARDINALITY_REPEATED" ], - "description": "The field cardinality.", - "type": "string" + "description": "The field cardinality." }, "defaultValue": { "description": "The string value of the default value of this field. Proto2 syntax only.", @@ -969,27 +335,36 @@ "name": { "description": "The field name.", "type": "string" + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".", + "type": "string" + }, + "number": { + "format": "int32", + "description": "The field number.", + "type": "integer" } }, "id": "Field" }, - "Metric": { - "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.", + "ListTimeSeriesResponse": { + "id": "ListTimeSeriesResponse", + "description": "The ListTimeSeries response.", "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" + "nextPageToken": { + "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.", + "type": "string" }, - "type": { - "type": "string", - "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount." + "timeSeries": { + "description": "One or more time series that match the filter included in the request.", + "items": { + "$ref": "TimeSeries" + }, + "type": "array" } - }, - "id": "Metric" + } }, "LabelDescriptor": { "id": "LabelDescriptor", @@ -1005,7 +380,6 @@ "description": "A human-readable description for the label." }, "valueType": { - "type": "string", "enumDescriptions": [ "A variable-length string. This is the default.", "Boolean; true or false.", @@ -1016,39 +390,48 @@ "BOOL", "INT64" ], - "description": "The type of data that can be assigned to the label." + "description": "The type of data that can be assigned to the label.", + "type": "string" } } }, - "ListTimeSeriesResponse": { - "description": "The ListTimeSeries response.", + "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": { - "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.", + "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" }, - "timeSeries": { - "description": "One or more time series that match the filter included in the request.", - "items": { - "$ref": "TimeSeries" - }, - "type": "array" + "name": { + "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", + "type": "string" + }, + "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" } }, - "id": "ListTimeSeriesResponse" + "id": "Group" }, "Type": { - "id": "Type", "description": "A protocol buffer message type.", "type": "object", "properties": { "options": { + "description": "The protocol buffer options.", "items": { "$ref": "Option" }, - "type": "array", - "description": "The protocol buffer options." + "type": "array" }, "fields": { "description": "The list of fields.", @@ -1068,10 +451,6 @@ }, "type": "array" }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - }, "syntax": { "description": "The source syntax.", "type": "string", @@ -1083,35 +462,13 @@ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ] - } - } - }, - "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": { - "filter": { - "description": "The filter used to determine which monitored resources belong to this group.", - "type": "string" - }, - "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" - }, - "name": { - "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", - "type": "string" - }, - "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" + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." } }, - "id": "Group" + "id": "Type" }, "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.", @@ -1122,35 +479,25 @@ "$ref": "Exponential" }, "explicitBuckets": { - "description": "The explicit buckets.", - "$ref": "Explicit" + "$ref": "Explicit", + "description": "The explicit buckets." }, "linearBuckets": { - "$ref": "Linear", - "description": "The linear bucket." + "description": "The linear bucket.", + "$ref": "Linear" } }, "id": "BucketOptions" }, "CollectdValue": { + "description": "A single data point from a collectd-based plugin.", "type": "object", "properties": { - "dataSourceName": { - "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".", - "type": "string" - }, "value": { - "$ref": "TypedValue", - "description": "The measurement value." + "description": "The measurement value.", + "$ref": "TypedValue" }, "dataSourceType": { - "enumDescriptions": [ - "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.", - "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.", - "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.", - "A rate of change of the measurement.", - "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA." - ], "enum": [ "UNSPECIFIED_DATA_SOURCE_TYPE", "GAUGE", @@ -1159,37 +506,71 @@ "ABSOLUTE" ], "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.", + "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.", + "A rate of change of the measurement.", + "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA." + ] + }, + "dataSourceName": { + "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".", "type": "string" } }, - "id": "CollectdValue", - "description": "A single data point from a collectd-based plugin." + "id": "CollectdValue" }, "SourceContext": { + "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.", + "type": "object", "properties": { "fileName": { "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: \"google/protobuf/source_context.proto\".", "type": "string" } }, - "id": "SourceContext", - "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.", - "type": "object" + "id": "SourceContext" }, "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": { + "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" + }, + "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\".", + "type": "string" + }, "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 includes the dimensionless unit 1, such as 1/s.The 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 '}'.", "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.", "items": { "$ref": "LabelDescriptor" }, - "type": "array" + "type": "array", + "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." }, "name": { "description": "The resource name of the metric descriptor. Depending on the implementation, the name typically includes: (1) the parent resource name that defines the scope of the metric type or of its data; and (2) the metric's URL-encoded type, which also appears in the type field of this descriptor. For example, following is the resource name of a custom metric within the GCP project my-project-id:\n\"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"\n", @@ -1200,57 +581,31 @@ "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" - }, - "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\".", - "type": "string" - }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", - "type": "string" + "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", + "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." + ] } }, "id": "MetricDescriptor" }, "Range": { - "description": "The range of the population values.", - "type": "object", "properties": { "min": { "format": "double", @@ -1258,14 +613,17 @@ "type": "number" }, "max": { - "type": "number", "format": "double", - "description": "The maximum of the population values." + "description": "The maximum of the population values.", + "type": "number" } }, - "id": "Range" + "id": "Range", + "description": "The range of the population values.", + "type": "object" }, "ListGroupsResponse": { + "description": "The ListGroups response.", "type": "object", "properties": { "group": { @@ -1280,11 +638,9 @@ "type": "string" } }, - "id": "ListGroupsResponse", - "description": "The ListGroups response." + "id": "ListGroupsResponse" }, "ListGroupMembersResponse": { - "description": "The ListGroupMembers response.", "type": "object", "properties": { "members": { @@ -1295,8 +651,8 @@ "type": "array" }, "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." + "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": { "format": "int32", @@ -1304,12 +660,17 @@ "type": "integer" } }, - "id": "ListGroupMembersResponse" + "id": "ListGroupMembersResponse", + "description": "The ListGroupMembers response." }, "CreateCollectdTimeSeriesRequest": { "description": "The CreateCollectdTimeSeries request.", "type": "object", "properties": { + "collectdVersion": { + "type": "string", + "description": "The version of collectd that collected the data. Example: \"5.3.0-192.el6\"." + }, "collectdPayloads": { "description": "The collectd payloads representing the time series data. You must not include more than a single point for each time series, so no two payloads can have the same values for all of the fields plugin, plugin_instance, type, and type_instance.", "items": { @@ -1318,33 +679,29 @@ "type": "array" }, "resource": { - "description": "The monitored resource associated with the time series.", - "$ref": "MonitoredResource" - }, - "collectdVersion": { - "description": "The version of collectd that collected the data. Example: \"5.3.0-192.el6\".", - "type": "string" + "$ref": "MonitoredResource", + "description": "The monitored resource associated with the time series." } }, "id": "CreateCollectdTimeSeriesRequest" }, "ListMonitoredResourceDescriptorsResponse": { - "id": "ListMonitoredResourceDescriptorsResponse", - "description": "The ListMonitoredResourceDescriptors 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" - }, "resourceDescriptors": { "description": "The monitored resource descriptors that are available to this project and that match filter, if present.", "items": { "$ref": "MonitoredResourceDescriptor" }, "type": "array" + }, + "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." } - } + }, + "id": "ListMonitoredResourceDescriptorsResponse", + "description": "The ListMonitoredResourceDescriptors response." }, "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.", @@ -1373,10 +730,16 @@ ] }, "resource": { - "$ref": "MonitoredResource", - "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data." + "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data.", + "$ref": "MonitoredResource" }, "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": [ @@ -1384,12 +747,6 @@ "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": { @@ -1400,15 +757,13 @@ "type": "array" }, "metric": { - "description": "The associated metric. A fully-specified metric used to identify the time series.", - "$ref": "Metric" + "$ref": "Metric", + "description": "The associated metric. A fully-specified metric used to identify the time series." } }, "id": "TimeSeries" }, "CreateTimeSeriesRequest": { - "description": "The CreateTimeSeries request.", - "type": "object", "properties": { "timeSeries": { "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.", @@ -1418,212 +773,857 @@ "type": "array" } }, - "id": "CreateTimeSeriesRequest" + "id": "CreateTimeSeriesRequest", + "description": "The CreateTimeSeries request.", + "type": "object" }, "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": { "range": { - "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3.", - "$ref": "Range" + "$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": { + "type": "string", + "format": "int64", + "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." + }, + "mean": { + "format": "double", + "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.", + "type": "number" + }, + "bucketCounts": { + "items": { + "format": "int64", + "type": "string" + }, + "type": "array", + "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." + }, + "bucketOptions": { + "$ref": "BucketOptions", + "description": "Required in the Stackdriver Monitoring API v3. Defines the histogram bucket boundaries." + }, + "sumOfSquaredDeviation": { + "format": "double", + "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.", + "type": "number" + } + }, + "id": "Distribution" + }, + "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": { + "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" + }, + "ListMetricDescriptorsResponse": { + "description": "The ListMetricDescriptors 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." + }, + "metricDescriptors": { + "description": "The metric descriptors that are available to the project and that match the value of filter, if present.", + "items": { + "$ref": "MetricDescriptor" + }, + "type": "array" + } + }, + "id": "ListMetricDescriptorsResponse" + } + }, + "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": "Monitoring", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/monitoring.write": { + "description": "Publish metric data to your Google Cloud projects" + }, + "https://www.googleapis.com/auth/monitoring.read": { + "description": "View monitoring data for all of your Google Cloud and third-party projects" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/monitoring": { + "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects" + } + } + } + }, + "rootUrl": "https://monitoring.googleapis.com/", + "ownerDomain": "google.com", + "name": "monitoring", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Stackdriver Monitoring API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "collectdTimeSeries": { + "methods": { + "create": { + "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e", + "request": { + "$ref": "CreateCollectdTimeSeriesRequest" + }, + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.write" + ], + "flatPath": "v3/projects/{projectsId}/collectdTimeSeries", + "id": "monitoring.projects.collectdTimeSeries.create", + "path": "v3/{+name}/collectdTimeSeries" + } + } + }, + "timeSeries": { + "methods": { + "list": { + "description": "Lists time series that match a filter. This method does not require a Stackdriver account.", + "response": { + "$ref": "ListTimeSeriesResponse" + }, + "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": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\"." + }, + "aggregation.groupByFields": { + "type": "string", + "repeated": true, + "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." + }, + "interval.endTime": { + "location": "query", + "format": "google-datetime", + "description": "Required. The end of the time interval.", + "type": "string" + }, + "aggregation.alignmentPeriod": { + "type": "string", + "location": "query", + "format": "google-duration", + "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." + }, + "pageSize": { + "location": "query", + "format": "int32", + "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.", + "type": "integer" + }, + "orderBy": { + "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.", + "type": "string", + "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_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", + "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" + }, + "aggregation.perSeriesAligner": { + "type": "string", + "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_FRACTION_TRUE", + "ALIGN_PERCENTILE_99", + "ALIGN_PERCENTILE_95", + "ALIGN_PERCENTILE_50", + "ALIGN_PERCENTILE_05" + ], + "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." + }, + "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" + }, + "interval.startTime": { + "type": "string", + "location": "query", + "format": "google-datetime", + "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." + }, + "view": { + "enum": [ + "FULL", + "HEADERS" + ], + "description": "Specifies which information is returned about the time series.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v3/projects/{projectsId}/timeSeries", + "id": "monitoring.projects.timeSeries.list", + "path": "v3/{+name}/timeSeries" + }, + "create": { + "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.", + "request": { + "$ref": "CreateTimeSeriesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "location": "path", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.write" + ], + "flatPath": "v3/projects/{projectsId}/timeSeries", + "path": "v3/{+name}/timeSeries", + "id": "monitoring.projects.timeSeries.create" + } + } }, - "count": { - "format": "int64", - "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.", - "type": "string" + "metricDescriptors": { + "methods": { + "delete": { + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "parameters": { + "name": { + "location": "path", + "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example of {metric_id} is: \"custom.googleapis.com/my_test_metric\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/metricDescriptors/.+$" + } + }, + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", + "id": "monitoring.projects.metricDescriptors.delete", + "path": "v3/{+name}", + "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted." + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "MetricDescriptor" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/metricDescriptors/.+$", + "location": "path", + "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\".", + "type": "string", + "required": true + } + }, + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.metricDescriptors.get", + "description": "Gets a single metric descriptor. This method does not require a Stackdriver account." + }, + "list": { + "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ListMetricDescriptorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ], + "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 additional results from the previous method call.", + "type": "string" + }, + "name": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\"." + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "A positive number that is the maximum number of results to return.", + "type": "integer" + }, + "filter": { + "type": "string", + "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" + } + }, + "flatPath": "v3/projects/{projectsId}/metricDescriptors", + "path": "v3/{+name}/metricDescriptors", + "id": "monitoring.projects.metricDescriptors.list" + }, + "create": { + "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics.", + "request": { + "$ref": "MetricDescriptor" + }, + "response": { + "$ref": "MetricDescriptor" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "type": "string", + "required": true, + "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.write" + ], + "flatPath": "v3/projects/{projectsId}/metricDescriptors", + "id": "monitoring.projects.metricDescriptors.create", + "path": "v3/{+name}/metricDescriptors" + } + } }, - "mean": { - "format": "double", - "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.", - "type": "number" + "monitoredResourceDescriptors": { + "methods": { + "get": { + "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", + "response": { + "$ref": "MonitoredResourceDescriptor" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$", + "location": "path", + "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.", + "type": "string", + "required": true + } + }, + "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}", + "id": "monitoring.projects.monitoredResourceDescriptors.get", + "path": "v3/{+name}" + }, + "list": { + "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.", + "httpMethod": "GET", + "response": { + "$ref": "ListMonitoredResourceDescriptorsResponse" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" + ], + "parameters": { + "filter": { + "description": "An optional filter describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(\"gce_\") AND resource.label:id\n", + "type": "string", + "location": "query" + }, + "pageToken": { + "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 additional results from the previous method call." + }, + "name": { + "location": "path", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "A positive number that is the maximum number of results to return." + } + }, + "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors" + } + } }, - "bucketCounts": { - "items": { - "format": "int64", - "type": "string" + "groups": { + "methods": { + "create": { + "request": { + "$ref": "Group" + }, + "description": "Creates a new group.", + "response": { + "$ref": "Group" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "parameters": { + "validateOnly": { + "location": "query", + "description": "If true, validate this request but do not create the group.", + "type": "boolean" + }, + "name": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".", + "type": "string", + "required": true + } + }, + "flatPath": "v3/projects/{projectsId}/groups", + "id": "monitoring.projects.groups.create", + "path": "v3/{+name}/groups" + }, + "delete": { + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/groups/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "id": "monitoring.projects.groups.delete", + "path": "v3/{+name}", + "description": "Deletes an existing group." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Group" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/groups/[^/]+$", + "location": "path", + "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "type": "string", + "required": true + } + }, + "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/{groupsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.groups.get", + "description": "Gets a single group." + }, + "list": { + "description": "Lists the existing groups.", + "httpMethod": "GET", + "response": { + "$ref": "ListGroupsResponse" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "location": "path", + "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + }, + "childrenOfGroup": { + "location": "query", + "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" + }, + "descendantsOfGroup": { + "type": "string", + "location": "query", + "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." + }, + "pageToken": { + "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 additional results from the previous method call." + }, + "pageSize": { + "format": "int32", + "description": "A positive number that is the maximum number of results to return.", + "type": "integer", + "location": "query" + }, + "ancestorsOfGroup": { + "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ], + "flatPath": "v3/projects/{projectsId}/groups", + "path": "v3/{+name}/groups", + "id": "monitoring.projects.groups.list" + }, + "update": { + "request": { + "$ref": "Group" + }, + "description": "Updates an existing group. You can change any group attributes except name.", + "response": { + "$ref": "Group" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "parameters": { + "validateOnly": { + "location": "query", + "description": "If true, validate this request but do not update the existing group.", + "type": "boolean" + }, + "name": { + "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/groups/[^/]+$", + "location": "path" + } + }, + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "id": "monitoring.projects.groups.update", + "path": "v3/{+name}" + } }, - "type": "array", - "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." - }, - "bucketOptions": { - "$ref": "BucketOptions", - "description": "Required in the Stackdriver Monitoring API v3. Defines the histogram bucket boundaries." - }, - "sumOfSquaredDeviation": { - "format": "double", - "description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.", - "type": "number" + "resources": { + "members": { + "methods": { + "list": { + "path": "v3/{+name}/members", + "id": "monitoring.projects.groups.members.list", + "description": "Lists the monitored resources that are members of a group.", + "httpMethod": "GET", + "response": { + "$ref": "ListGroupMembersResponse" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ], + "parameters": { + "name": { + "location": "path", + "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/groups/[^/]+$" + }, + "interval.endTime": { + "location": "query", + "format": "google-datetime", + "description": "Required. The end of the time interval.", + "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" + }, + "interval.startTime": { + "location": "query", + "format": "google-datetime", + "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.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "A positive number that is the maximum number of results to return.", + "type": "integer" + } + }, + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members" + } + } + } + } } } + } + }, + "parameters": { + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "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": { - "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" + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "ListMetricDescriptorsResponse": { - "description": "The ListMetricDescriptors 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" - }, - "metricDescriptors": { - "description": "The metric descriptors that are available to the project and that match the value of filter, if present.", - "items": { - "$ref": "MetricDescriptor" - }, - "type": "array" - } - }, - "id": "ListMetricDescriptorsResponse" + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "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\".", - "items": { - "$ref": "LabelDescriptor" - }, - "type": "array" - }, - "name": { - "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".", - "type": "string" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", - "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" - }, - "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" + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string" }, - "TypedValue": { - "description": "A single strongly-typed value.", - "type": "object", - "properties": { - "stringValue": { - "description": "A variable-length string value.", - "type": "string" - }, - "boolValue": { - "description": "A Boolean value: true or false.", - "type": "boolean" - }, - "doubleValue": { - "format": "double", - "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10\u003csup\u003e±300\u003c/sup\u003e and it has 16 significant digits of precision.", - "type": "number" - }, - "int64Value": { - "format": "int64", - "description": "A 64-bit integer. Its range is approximately ±9.2x10\u003csup\u003e18\u003c/sup\u003e.", - "type": "string" - }, - "distributionValue": { - "description": "A distribution value.", - "$ref": "Distribution" - } - }, - "id": "TypedValue" + "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" + ] }, - "CollectdPayload": { - "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", - "type": "object", - "properties": { - "type": { - "description": "The measurement type. Example: \"memory\".", - "type": "string" - }, - "metadata": { - "description": "The measurement metadata. Example: \"process_id\" -\u003e 12345", - "type": "object", - "additionalProperties": { - "$ref": "TypedValue" - } - }, - "plugin": { - "description": "The name of the plugin. Example: \"disk\".", - "type": "string" - }, - "pluginInstance": { - "description": "The instance name of the plugin Example: \"hdcl\".", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "The end time of the interval.", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "The start time of the interval.", - "type": "string" - }, - "values": { - "description": "The measured values during this time interval. Each value must have a different dataSourceName.", - "items": { - "$ref": "CollectdValue" - }, - "type": "array" - }, - "typeInstance": { - "description": "The measurement type instance. Example: \"used\".", - "type": "string" - } - }, - "id": "CollectdPayload" - } - }, - "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": "Monitoring", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/monitoring.write": { - "description": "Publish metric data to your Google Cloud projects" - }, - "https://www.googleapis.com/auth/monitoring.read": { - "description": "View monitoring data for all of your Google Cloud and third-party projects" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/monitoring": { - "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects" - } - } + "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.", + "default": "true", + "type": "boolean", + "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.", + "default": "true", + "type": "boolean", + "location": "query" } }, - "rootUrl": "https://monitoring.googleapis.com/" + "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": "", + "revision": "20170711", + "documentationLink": "https://cloud.google.com/monitoring/api/", + "id": "monitoring:v3" } diff --git a/DiscoveryJson/oslogin_v1alpha.json b/DiscoveryJson/oslogin_v1alpha.json index d627a83069..0c7101c0a6 100644 --- a/DiscoveryJson/oslogin_v1alpha.json +++ b/DiscoveryJson/oslogin_v1alpha.json @@ -1,137 +1,4 @@ { - "basePath": "", - "id": "oslogin:v1alpha", - "documentationLink": "https://developers.google.com/apis-explorer/#p/oslogin/v1alpha/", - "revision": "20170619", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "SshPublicKey": { - "description": "The SSH public key information associated with a Directory API User.", - "type": "object", - "properties": { - "expirationTimeUsec": { - "format": "int64", - "description": "An expiration time in microseconds since epoch.", - "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" - }, - "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" - }, - "ImportSshPublicKeyResponse": { - "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." - }, - "PosixAccount": { - "type": "object", - "properties": { - "primary": { - "description": "Only one POSIX account can be marked as primary.", - "type": "boolean" - }, - "gid": { - "type": "integer", - "format": "int32", - "description": "The default group ID." - }, - "uid": { - "type": "integer", - "format": "int32", - "description": "The user ID." - }, - "username": { - "description": "The username of the POSIX account.", - "type": "string" - }, - "shell": { - "description": "The path to the logic shell for this account.", - "type": "string" - }, - "homeDirectory": { - "description": "The path to the home directory for this account.", - "type": "string" - }, - "gecos": { - "description": "The GECOS (user information) entry for this account.", - "type": "string" - }, - "systemId": { - "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.", - "type": "string" - } - }, - "id": "PosixAccount", - "description": "The POSIX account information associated with a Directory API User." - }, - "LoginProfile": { - "description": "The Directory API profile information used for logging in to a virtual\nmachine on Google Compute Engine.", - "type": "object", - "properties": { - "posixAccounts": { - "description": "The list of POSIX accounts associated with the Directory API user.", - "items": { - "$ref": "PosixAccount" - }, - "type": "array" - }, - "name": { - "description": "A unique user ID for identifying the user.", - "type": "string" - }, - "suspended": { - "description": "Indicates if the user is suspended.", - "type": "boolean" - }, - "sshPublicKeys": { - "description": "A map from SSH public key fingerprint to the associated key object.", - "type": "object", - "additionalProperties": { - "$ref": "SshPublicKey" - } - } - }, - "id": "LoginProfile" - } - }, - "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.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", @@ -149,47 +16,47 @@ "parent" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "parent": { + "location": "path", "description": "The unique ID for the user in format `users/{user}`.", "type": "string", "required": true, - "pattern": "^users/[^/]+$", - "location": "path" + "pattern": "^users/[^/]+$" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1alpha/users/{usersId}:importSshPublicKey", "id": "oslogin.users.importSshPublicKey", "path": "v1alpha/{+parent}: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" - }, - "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile." + } }, "getLoginProfile": { + "parameterOrder": [ + "name" + ], "response": { "$ref": "LoginProfile" }, "httpMethod": "GET", - "parameterOrder": [ - "name" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { "name": { - "pattern": "^users/[^/]+$", - "location": "path", "description": "The unique ID for the user in format `users/{user}`.", "type": "string", - "required": true + "required": true, + "pattern": "^users/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "flatPath": "v1alpha/users/{usersId}/loginProfile", "id": "oslogin.users.getLoginProfile", "path": "v1alpha/{+name}/loginProfile", @@ -200,7 +67,6 @@ "sshPublicKeys": { "methods": { "delete": { - "description": "Deletes an SSH public key.", "response": { "$ref": "Empty" }, @@ -213,25 +79,19 @@ ], "parameters": { "name": { - "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.", "type": "string", "required": true, "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", - "location": "path" + "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}`." } }, "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", "id": "oslogin.users.sshPublicKeys.delete", - "path": "v1alpha/{+name}" + "path": "v1alpha/{+name}", + "description": "Deletes an SSH public key." }, "patch": { - "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" - }, "response": { "$ref": "SshPublicKey" }, @@ -247,41 +107,48 @@ "location": "query" }, "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}`.", "type": "string", "required": true, - "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" + "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}`." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { + ], "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "id": "oslogin.users.sshPublicKeys.patch", "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.get", - "description": "Retrieves an SSH public key.", - "httpMethod": "GET", + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", + "request": { + "$ref": "SshPublicKey" + } + }, + "get": { "response": { "$ref": "SshPublicKey" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "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}`.", "type": "string", - "required": true + "required": true, + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "id": "oslogin.users.sshPublicKeys.get", + "path": "v1alpha/{+name}", + "description": "Retrieves an SSH public key." } } } @@ -310,49 +177,49 @@ "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": { + "description": "V1 error format.", "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" ], + "location": "query" + }, + "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" }, "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": { - "type": "string", "location": "query", - "description": "OAuth access token." + "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.", @@ -365,20 +232,153 @@ "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" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" } }, "version": "v1alpha", "baseUrl": "https://oslogin.googleapis.com/", + "kind": "discovery#restDescription", "description": "A Google Cloud API for managing OS login configuration for Directory API users.", "servicePath": "", - "kind": "discovery#restDescription" + "basePath": "", + "revision": "20170619", + "documentationLink": "https://developers.google.com/apis-explorer/#p/oslogin/v1alpha/", + "id": "oslogin:v1alpha", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "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 Directory API User.", + "type": "object", + "properties": { + "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" + }, + "gid": { + "format": "int32", + "description": "The default group ID.", + "type": "integer" + }, + "uid": { + "format": "int32", + "description": "The user ID.", + "type": "integer" + }, + "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" + } + }, + "id": "PosixAccount" + }, + "LoginProfile": { + "description": "The Directory API profile information used for logging in to a virtual\nmachine on Google Compute Engine.", + "type": "object", + "properties": { + "sshPublicKeys": { + "description": "A map from SSH public key fingerprint to the associated key object.", + "type": "object", + "additionalProperties": { + "$ref": "SshPublicKey" + } + }, + "posixAccounts": { + "description": "The list of POSIX accounts associated with the Directory API user.", + "items": { + "$ref": "PosixAccount" + }, + "type": "array" + }, + "name": { + "description": "A unique user ID for identifying the user.", + "type": "string" + }, + "suspended": { + "description": "Indicates if the user is suspended.", + "type": "boolean" + } + }, + "id": "LoginProfile" + }, + "SshPublicKey": { + "description": "The SSH public key information associated with a Directory API User.", + "type": "object", + "properties": { + "expirationTimeUsec": { + "format": "int64", + "description": "An expiration time in microseconds since epoch.", + "type": "string" + }, + "fingerprint": { + "description": "[Output Only] The SHA-256 fingerprint of the SSH public key.", + "type": "string" + }, + "key": { + "type": "string", + "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." + } + }, + "id": "SshPublicKey" + }, + "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": {} + } + }, + "protocol": "rest", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "canonicalName": "Cloud OS Login", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.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" + } + } + } + } } diff --git a/DiscoveryJson/partners_v2.json b/DiscoveryJson/partners_v2.json index 628a9a0b31..b45df610a4 100644 --- a/DiscoveryJson/partners_v2.json +++ b/DiscoveryJson/partners_v2.json @@ -1,80 +1,40 @@ { - "basePath": "", - "ownerDomain": "google.com", - "name": "partners", - "batchPath": "batch", - "revision": "20170707", - "documentationLink": "https://developers.google.com/partners/", - "id": "partners:v2", - "title": "Google Partners API", - "discoveryVersion": "v1", - "ownerName": "Google", "version_module": "True", "resources": { - "v2": { + "clientMessages": { "methods": { - "getPartnersstatus": { - "flatPath": "v2/partnersstatus", - "id": "partners.getPartnersstatus", - "path": "v2/partnersstatus", - "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.", - "response": { - "$ref": "GetPartnersStatusResponse" + "log": { + "flatPath": "v2/clientMessages:log", + "path": "v2/clientMessages:log", + "id": "partners.clientMessages.log", + "description": "Logs a generic message from the client, such as\n`Failed to render component`, `Profile page is running slow`,\n`More than 500 users have accessed this result.`, etc.", + "request": { + "$ref": "LogMessageRequest" }, + "httpMethod": "POST", "parameterOrder": [], + "response": { + "$ref": "LogMessageResponse" + }, + "parameters": {} + } + } + }, + "exams": { + "methods": { + "getToken": { + "flatPath": "v2/exams/{examType}/token", + "path": "v2/exams/{examType}/token", + "id": "partners.exams.getToken", + "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System", "httpMethod": "GET", - "parameters": { - "requestMetadata.trafficSource.trafficSubId": { - "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "requestMetadata.partnersSessionId": { - "type": "string", - "location": "query", - "description": "Google Partners session 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": { - "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 - } - } - }, - "updateLeads": { + "parameterOrder": [ + "examType" + ], "response": { - "$ref": "Lead" + "$ref": "ExamToken" }, - "parameterOrder": [], - "httpMethod": "PATCH", "parameters": { - "updateMask": { - "format": "google-fieldmask", - "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.", - "type": "string", - "location": "query" - }, "requestMetadata.experimentIds": { "repeated": true, "location": "query", @@ -82,9 +42,28 @@ "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" + "type": "string", + "location": "query" + }, + "examType": { + "location": "path", + "enum": [ + "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", + "CET_ADWORDS_FUNDAMENTALS", + "CET_ADWORDS_ADVANCED_SEARCH", + "CET_ADWORDS_ADVANCED_DISPLAY", + "CET_VIDEO_ADS", + "CET_DOUBLECLICK", + "CET_ANALYTICS", + "CET_SHOPPING", + "CET_MOBILE", + "CET_DIGITAL_SALES", + "CET_MOBILE_SITES" + ], + "description": "The exam type we are requesting a token for.", + "type": "string", + "required": true }, "requestMetadata.userOverrides.userId": { "description": "Logged-in user ID to impersonate instead of the user's ID.", @@ -92,9 +71,9 @@ "location": "query" }, "requestMetadata.partnersSessionId": { + "location": "query", "description": "Google Partners session ID.", - "type": "string", - "location": "query" + "type": "string" }, "requestMetadata.trafficSource.trafficSourceId": { "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", @@ -111,21 +90,18 @@ "type": "string", "location": "query" } - }, - "flatPath": "v2/leads", - "id": "partners.updateLeads", - "path": "v2/leads", - "request": { - "$ref": "Lead" - }, - "description": "Updates the specified lead." - }, - "updateCompanies": { - "httpMethod": "PATCH", - "parameterOrder": [], + } + } + } + }, + "leads": { + "methods": { + "list": { "response": { - "$ref": "Company" + "$ref": "ListLeadsResponse" }, + "parameterOrder": [], + "httpMethod": "GET", "parameters": { "requestMetadata.experimentIds": { "description": "Experiment IDs the current request belongs to.", @@ -133,6 +109,11 @@ "repeated": true, "location": "query" }, + "orderBy": { + "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported", + "type": "string", + "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.", @@ -148,364 +129,305 @@ "description": "Google Partners session ID.", "type": "string" }, - "requestMetadata.trafficSource.trafficSourceId": { - "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", + "pageToken": { + "location": "query", + "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.", + "type": "string" + }, + "pageSize": { + "format": "int32", + "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", + "type": "integer", "location": "query" }, - "requestMetadata.locale": { + "requestMetadata.trafficSource.trafficSourceId": { "location": "query", - "description": "Locale to use for the current request.", + "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": { + "requestMetadata.locale": { "type": "string", "location": "query", - "description": "IP address to use instead of the user's geo-located IP address." + "description": "Locale to use for the current request." }, - "updateMask": { - "type": "string", + "requestMetadata.userOverrides.ipAddress": { "location": "query", - "format": "google-fieldmask", - "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths." + "description": "IP address to use instead of the user's geo-located IP address.", + "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" - } + "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." } } }, - "companies": { + "offers": { "methods": { "list": { + "path": "v2/offers", + "id": "partners.offers.list", + "description": "Lists the Offers available for the current user", + "httpMethod": "GET", + "response": { + "$ref": "ListOffersResponse" + }, + "parameterOrder": [], "parameters": { - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "orderBy": { + "requestMetadata.trafficSource.trafficSourceId": { "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.", + "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" }, - "specializations": { - "type": "string", - "repeated": true, + "requestMetadata.locale": { "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." - }, - "maxMonthlyBudget.currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string", - "location": "query" + "description": "Locale to use for the current request.", + "type": "string" }, - "minMonthlyBudget.currencyCode": { + "requestMetadata.userOverrides.ipAddress": { "location": "query", - "description": "The 3-letter currency code defined in ISO 4217.", + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" }, - "requestMetadata.userOverrides.userId": { - "type": "string", + "requestMetadata.experimentIds": { "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true }, - "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`.", + "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" }, - "address": { + "requestMetadata.userOverrides.userId": { + "type": "string", "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" + "description": "Logged-in user ID to impersonate instead of the user's ID." }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", "type": "string", "location": "query" - }, - "minMonthlyBudget.units": { - "location": "query", - "format": "int64", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "type": "string" - }, - "maxMonthlyBudget.nanos": { - "location": "query", - "format": "int32", - "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.", - "type": "integer" - }, - "services": { - "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", - "repeated": true - }, - "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." - }, - "maxMonthlyBudget.units": { - "type": "string", - "location": "query", - "format": "int64", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar." - }, - "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": { - "type": "integer", + } + }, + "flatPath": "v2/offers" + } + }, + "resources": { + "history": { + "methods": { + "list": { + "response": { + "$ref": "ListOffersHistoryResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "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" + }, + "pageToken": { + "location": "query", + "description": "Token to retrieve a specific page.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Maximum number of rows to return per page." + }, + "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" + }, + "entireCompany": { + "description": "if true, show history for the entire company. Requires user to be admin.", + "type": "boolean", + "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" + }, + "orderBy": { + "description": "Comma-separated list of fields to order by, e.g.: \"foo,bar,baz\".\nUse \"foo desc\" to sort descending.\nList of valid field names is: name, offer_code, expiration_time, status,\n last_modified_time, sender_name, creation_time, country_code,\n offer_type.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/offers/history", + "id": "partners.offers.history.list", + "path": "v2/offers/history", + "description": "Lists the Historical Offers for the current user (or user's entire company)" + } + } + } + } + }, + "userStates": { + "methods": { + "list": { + "response": { + "$ref": "ListUserStatesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "requestMetadata.userOverrides.userId": { "location": "query", - "format": "int32", - "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." + "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" - }, - "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" }, - "companyName": { + "requestMetadata.trafficSource.trafficSourceId": { "location": "query", - "description": "Company name to search for.", + "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" }, - "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.", + "requestMetadata.locale": { + "description": "Locale to use for the current request.", "type": "string", - "repeated": true + "location": "query" }, - "websiteUrl": { + "requestMetadata.userOverrides.ipAddress": { "location": "query", - "description": "Website URL that will help to find a better matched company.\n.", + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" }, - "gpsMotivations": { - "location": "query", - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" - ], - "description": "List of reasons for using Google Partner Search to get companies.", - "type": "string", - "repeated": true - }, - "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", + "requestMetadata.experimentIds": { "repeated": true, - "location": "query" - }, - "pageSize": { "location": "query", - "format": "int32", - "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.", - "type": "integer" + "description": "Experiment IDs the current request belongs to.", + "type": "string" }, - "requestMetadata.userOverrides.ipAddress": { + "requestMetadata.trafficSource.trafficSubId": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", + "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", - "id": "partners.companies.list", - "path": "v2/companies", - "description": "Lists companies.", + "flatPath": "v2/userStates", + "id": "partners.userStates.list", + "path": "v2/userStates", + "description": "Lists states for current user." + } + } + }, + "analytics": { + "methods": { + "list": { + "httpMethod": "GET", "response": { - "$ref": "ListCompaniesResponse" + "$ref": "ListAnalyticsResponse" }, "parameterOrder": [], - "httpMethod": "GET" - }, - "get": { - "response": { - "$ref": "GetCompanyResponse" - }, - "parameterOrder": [ - "companyId" - ], - "httpMethod": "GET", "parameters": { + "pageSize": { + "location": "query", + "format": "int32", + "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.", + "type": "integer" + }, "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.userOverrides.ipAddress": { + "requestMetadata.locale": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", + "description": "Locale to use for the current request.", "type": "string" }, - "companyId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the company to retrieve." - }, - "currencyCode": { - "type": "string", + "requestMetadata.userOverrides.ipAddress": { "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." + "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", - "description": "Experiment IDs the current request belongs to." + "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" }, - "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.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" }, - "view": { + "requestMetadata.userOverrides.userId": { "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`.", + "description": "Logged-in user ID to impersonate instead of the user's ID.", "type": "string" }, - "address": { + "pageToken": { "location": "query", - "description": "The address to use for sorting the company's addresses by proximity.\nIf not given, the geo-located address of the request is used.\nUsed when order_by is set.", - "type": "string" - }, - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", + "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" } }, - "flatPath": "v2/companies/{companyId}", - "id": "partners.companies.get", - "path": "v2/companies/{companyId}", - "description": "Gets a company." - } - }, - "resources": { - "leads": { - "methods": { - "create": { - "parameters": { - "companyId": { - "type": "string", - "required": true, - "location": "path", - "description": "The ID of the company to contact." - } - }, - "flatPath": "v2/companies/{companyId}/leads", - "id": "partners.companies.leads.create", - "path": "v2/companies/{companyId}/leads", - "request": { - "$ref": "CreateLeadRequest" - }, - "description": "Creates an advertiser lead for the given company ID.", - "response": { - "$ref": "CreateLeadResponse" - }, - "parameterOrder": [ - "companyId" - ], - "httpMethod": "POST" - } - } + "flatPath": "v2/analytics", + "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." } } }, - "users": { + "v2": { "methods": { - "deleteCompanyRelation": { - "description": "Deletes a user's company relation. Unaffiliaites the user from a company.", + "updateLeads": { "response": { - "$ref": "Empty" + "$ref": "Lead" }, - "parameterOrder": [ - "userId" - ], - "httpMethod": "DELETE", + "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": { "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": { "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", @@ -517,46 +439,46 @@ "location": "query" }, "requestMetadata.userOverrides.ipAddress": { + "location": "query", "description": "IP address to use instead of the user's geo-located IP address.", + "type": "string" + }, + "updateMask": { + "format": "google-fieldmask", + "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.", "type": "string", "location": "query" }, "requestMetadata.experimentIds": { - "location": "query", "description": "Experiment IDs the current request belongs to.", "type": "string", - "repeated": true + "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", - "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.", - "type": "string", - "required": true + "type": "string" } }, - "flatPath": "v2/users/{userId}/companyRelation", - "id": "partners.users.deleteCompanyRelation", - "path": "v2/users/{userId}/companyRelation" + "flatPath": "v2/leads", + "id": "partners.updateLeads", + "path": "v2/leads", + "description": "Updates the specified lead.", + "request": { + "$ref": "Lead" + } }, - "createCompanyRelation": { - "path": "v2/users/{userId}/companyRelation", - "id": "partners.users.createCompanyRelation", - "description": "Creates a user's company relation. Affiliates the user to a company.", + "updateCompanies": { + "description": "Update company.\nShould only be called within the context of an authorized logged in user.", "request": { - "$ref": "CompanyRelation" + "$ref": "Company" }, - "httpMethod": "PUT", - "parameterOrder": [ - "userId" - ], "response": { - "$ref": "CompanyRelation" + "$ref": "Company" }, + "parameterOrder": [], + "httpMethod": "PATCH", "parameters": { "requestMetadata.partnersSessionId": { "location": "query", @@ -564,66 +486,67 @@ "type": "string" }, "requestMetadata.userOverrides.userId": { + "type": "string", "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" + "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" + "type": "string", + "location": "query" }, "requestMetadata.locale": { + "location": "query", "description": "Locale to use for the current request.", - "type": "string", - "location": "query" + "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", + "format": "google-fieldmask", + "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.", + "type": "string" + }, "requestMetadata.experimentIds": { + "repeated": true, "location": "query", "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": 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" - }, - "userId": { - "location": "path", - "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", - "type": "string", - "required": true } }, - "flatPath": "v2/users/{userId}/companyRelation" + "flatPath": "v2/companies", + "id": "partners.updateCompanies", + "path": "v2/companies" }, - "get": { + "getPartnersstatus": { + "flatPath": "v2/partnersstatus", + "id": "partners.getPartnersstatus", + "path": "v2/partnersstatus", + "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.", + "response": { + "$ref": "GetPartnersStatusResponse" + }, + "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" }, - "userView": { - "type": "string", + "requestMetadata.partnersSessionId": { "location": "query", - "enum": [ - "BASIC", - "PROFILE", - "PUBLIC_PROFILE" - ], - "description": "Specifies what parts of the user information to return." + "description": "Google Partners session ID.", + "type": "string" }, "requestMetadata.trafficSource.trafficSourceId": { "location": "query", @@ -631,302 +554,279 @@ "type": "string" }, "requestMetadata.locale": { - "type": "string", "location": "query", - "description": "Locale to use for the current request." + "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" + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address." }, "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", "description": "Experiment IDs the current request belongs to.", - "type": "string" + "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": { - "location": "path", - "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.", - "type": "string", - "required": true } - }, - "flatPath": "v2/users/{userId}", - "path": "v2/users/{userId}", - "id": "partners.users.get", - "description": "Gets a user.", + } + } + } + }, + "companies": { + "methods": { + "list": { + "path": "v2/companies", + "id": "partners.companies.list", + "description": "Lists companies.", "httpMethod": "GET", - "parameterOrder": [ - "userId" - ], "response": { - "$ref": "User" - } - }, - "updateProfile": { + "$ref": "ListCompaniesResponse" + }, + "parameterOrder": [], "parameters": { - "requestMetadata.partnersSessionId": { + "view": { "location": "query", - "description": "Google Partners session ID.", + "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" }, - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", + "requestMetadata.locale": { + "location": "query", + "description": "Locale to use for the current request.", + "type": "string" + }, + "address": { "type": "string", + "location": "query", + "description": "The address to use when searching for companies.\nIf not given, the geo-located address of the request is used." + }, + "minMonthlyBudget.units": { + "format": "int64", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "type": "string", + "location": "query" + }, + "maxMonthlyBudget.nanos": { + "format": "int32", + "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.", + "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": { "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": { + "maxMonthlyBudget.units": { "type": "string", "location": "query", - "description": "Locale to use for the current request." + "format": "int64", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar." }, - "requestMetadata.userOverrides.ipAddress": { + "requestMetadata.trafficSource.trafficSubId": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", + "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.experimentIds": { + "minMonthlyBudget.nanos": { "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "requestMetadata.trafficSource.trafficSubId": { - "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - } - }, - "flatPath": "v2/users/profile", - "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" - }, - "response": { - "$ref": "UserProfile" - }, - "parameterOrder": [], - "httpMethod": "PATCH" - } - } - }, - "userEvents": { - "methods": { - "log": { - "description": "Logs a user event.", - "request": { - "$ref": "LogUserEventRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "LogUserEventResponse" - }, - "parameters": {}, - "flatPath": "v2/userEvents:log", - "path": "v2/userEvents:log", - "id": "partners.userEvents.log" - } - } - }, - "clientMessages": { - "methods": { - "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" - }, - "response": { - "$ref": "LogMessageResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v2/clientMessages:log" - } - } - }, - "exams": { - "methods": { - "getToken": { - "id": "partners.exams.getToken", - "path": "v2/exams/{examType}/token", - "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System", - "response": { - "$ref": "ExamToken" - }, - "parameterOrder": [ - "examType" - ], - "httpMethod": "GET", - "parameters": { - "examType": { - "description": "The exam type we are requesting a token for.", - "type": "string", - "required": true, - "location": "path", - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ] - }, - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." + "format": "int32", + "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.", + "type": "integer" }, "requestMetadata.partnersSessionId": { "description": "Google Partners session ID.", "type": "string", "location": "query" }, - "requestMetadata.trafficSource.trafficSourceId": { + "companyName": { "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.", + "description": "Company name to search for.", "type": "string" }, - "requestMetadata.locale": { - "description": "Locale to use for the current request.", + "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": { + "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, "location": "query" }, - "requestMetadata.userOverrides.ipAddress": { + "websiteUrl": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", + "description": "Website URL that will help to find a better matched company.\n.", "type": "string" }, - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", + "gpsMotivations": { + "description": "List of reasons for using Google Partner Search to get companies.", "type": "string", "repeated": true, - "location": "query" + "location": "query", + "enum": [ + "GPS_MOTIVATION_UNSPECIFIED", + "GPSM_HELP_WITH_ADVERTISING", + "GPSM_HELP_WITH_WEBSITE", + "GPSM_NO_WEBSITE" + ] }, - "requestMetadata.trafficSource.trafficSubId": { + "languageCodes": { + "description": "List of language codes that company can support. Only primary language\nsubtags are accepted as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").", "type": "string", - "location": "query", - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." - } - }, - "flatPath": "v2/exams/{examType}/token" - } - } - }, - "leads": { - "methods": { - "list": { - "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user.", - "response": { - "$ref": "ListLeadsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { + "repeated": true, + "location": "query" + }, "pageSize": { "location": "query", "format": "int32", - "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", + "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.", "type": "integer" }, - "requestMetadata.trafficSource.trafficSourceId": { + "requestMetadata.userOverrides.ipAddress": { "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.", + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" }, - "requestMetadata.locale": { + "requestMetadata.experimentIds": { + "repeated": true, "location": "query", - "description": "Locale to use for the current request.", + "description": "Experiment IDs the current request belongs to.", "type": "string" }, - "requestMetadata.userOverrides.ipAddress": { - "type": "string", + "orderBy": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP address." + "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" }, - "requestMetadata.experimentIds": { + "specializations": { "type": "string", "repeated": true, "location": "query", - "description": "Experiment IDs the current request belongs to." + "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." }, - "orderBy": { + "maxMonthlyBudget.currencyCode": { "location": "query", - "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported", + "description": "The 3-letter currency code defined in ISO 4217.", "type": "string" }, - "requestMetadata.trafficSource.trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", - "type": "string", - "location": "query" - }, - "requestMetadata.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", - "location": "query" + "type": "string" }, - "pageToken": { + "minMonthlyBudget.currencyCode": { + "type": "string", "location": "query", - "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.", - "type": "string" + "description": "The 3-letter currency code defined in ISO 4217." } }, - "flatPath": "v2/leads", - "id": "partners.leads.list", - "path": "v2/leads" - } - } - }, - "offers": { - "methods": { - "list": { + "flatPath": "v2/companies" + }, + "get": { + "description": "Gets a company.", + "httpMethod": "GET", + "parameterOrder": [ + "companyId" + ], "response": { - "$ref": "ListOffersResponse" + "$ref": "GetCompanyResponse" }, - "parameterOrder": [], - "httpMethod": "GET", "parameters": { - "requestMetadata.trafficSource.trafficSourceId": { + "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": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "description": "Google Partners session ID.", "type": "string" }, + "view": { + "enum": [ + "COMPANY_VIEW_UNSPECIFIED", + "CV_GOOGLE_PARTNER_SEARCH" + ], + "description": "The view of `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.", + "type": "string", + "location": "query" + }, "requestMetadata.locale": { + "description": "Locale to use for the current request.", "type": "string", - "location": "query", - "description": "Locale to use for the current request." + "location": "query" }, - "requestMetadata.userOverrides.ipAddress": { + "address": { "location": "query", - "description": "IP address to use instead of the user's geo-located IP 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" + }, + "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": { + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address.", + "type": "string" + }, + "companyId": { + "location": "path", + "description": "The ID of the company to retrieve.", + "type": "string", + "required": true + }, + "currencyCode": { + "location": "query", + "description": "If the company's budget is in a different currency code than this one, then\nthe converted budget is converted to this currency code.", "type": "string" }, "requestMetadata.experimentIds": { @@ -936,124 +836,72 @@ "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", - "location": "query" + "type": "string" }, - "requestMetadata.userOverrides.userId": { - "type": "string", + "orderBy": { "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" + "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" } }, - "flatPath": "v2/offers", - "id": "partners.offers.list", - "path": "v2/offers", - "description": "Lists the Offers available for the current user" + "flatPath": "v2/companies/{companyId}", + "path": "v2/companies/{companyId}", + "id": "partners.companies.get" } }, "resources": { - "history": { + "leads": { "methods": { - "list": { - "parameterOrder": [], + "create": { + "flatPath": "v2/companies/{companyId}/leads", + "id": "partners.companies.leads.create", + "path": "v2/companies/{companyId}/leads", + "description": "Creates an advertiser lead for the given company ID.", + "request": { + "$ref": "CreateLeadRequest" + }, "response": { - "$ref": "ListOffersHistoryResponse" + "$ref": "CreateLeadResponse" }, - "httpMethod": "GET", + "parameterOrder": [ + "companyId" + ], + "httpMethod": "POST", "parameters": { - "pageToken": { - "location": "query", - "description": "Token to retrieve a specific page.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "Maximum number of rows to return per page.", - "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": { - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string" - }, - "entireCompany": { - "location": "query", - "description": "if true, show history for the entire company. Requires user to be admin.", - "type": "boolean" - }, - "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": { + "companyId": { + "location": "path", + "description": "The ID of the company to contact.", "type": "string", - "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." - }, - "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" + "required": true } - }, - "flatPath": "v2/offers/history", - "id": "partners.offers.history.list", - "path": "v2/offers/history", - "description": "Lists the Historical Offers for the current user (or user's entire company)" + } } } } } }, - "userStates": { + "users": { "methods": { - "list": { - "id": "partners.userStates.list", - "path": "v2/userStates", - "description": "Lists states for current user.", + "get": { + "description": "Gets a user.", + "httpMethod": "GET", "response": { - "$ref": "ListUserStatesResponse" + "$ref": "User" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameterOrder": [ + "userId" + ], "parameters": { - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.partnersSessionId": { + "userView": { "location": "query", - "description": "Google Partners session ID.", + "enum": [ + "BASIC", + "PROFILE", + "PUBLIC_PROFILE" + ], + "description": "Specifies what parts of the user information to return.", "type": "string" }, "requestMetadata.trafficSource.trafficSourceId": { @@ -1072,35 +920,59 @@ "type": "string" }, "requestMetadata.experimentIds": { + "location": "query", "description": "Experiment IDs the current request belongs to.", "type": "string", - "repeated": true, - "location": "query" + "repeated": true + }, + "userId": { + "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.", + "type": "string", + "required": true, + "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" + "location": "query", + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us." + }, + "requestMetadata.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" } }, - "flatPath": "v2/userStates" - } - } - }, - "analytics": { - "methods": { - "list": { + "flatPath": "v2/users/{userId}", + "path": "v2/users/{userId}", + "id": "partners.users.get" + }, + "updateProfile": { + "httpMethod": "PATCH", + "parameterOrder": [], + "response": { + "$ref": "UserProfile" + }, "parameters": { - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string", - "repeated": true, "location": "query" }, + "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", - "location": "query" + "type": "string" }, "requestMetadata.userOverrides.userId": { "description": "Logged-in user ID to impersonate instead of the user's ID.", @@ -1112,69 +984,193 @@ "description": "Google Partners session ID.", "type": "string" }, - "pageToken": { + "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/users/profile", + "path": "v2/users/profile", + "id": "partners.users.updateProfile", + "description": "Updates a user's profile. A user can only update their own profile and\nshould only be called within the context of a logged in user.", + "request": { + "$ref": "UserProfile" + } + }, + "deleteCompanyRelation": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "userId" + ], + "parameters": { + "requestMetadata.userOverrides.userId": { "location": "query", - "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListAnalyticsResponse.next_page_token`\nreturned from the previous call to\nListAnalytics.\nWill be a date string in `YYYY-MM-DD` format representing the end date\nof the date range of results to return.\nIf unspecified or set to \"\", default value is the current date." + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string" }, - "pageSize": { - "format": "int32", - "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.", - "type": "integer", + "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." + "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.", - "type": "string" + "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", - "location": "query" - } - }, - "flatPath": "v2/analytics", - "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.", - "httpMethod": "GET", - "response": { - "$ref": "ListAnalyticsResponse" + "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" + }, + "userId": { + "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", + "type": "string", + "required": true, + "location": "path" + } + }, + "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." + }, + "createCompanyRelation": { + "httpMethod": "PUT", + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "CompanyRelation" + }, + "parameters": { + "requestMetadata.userOverrides.ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", + "type": "string", + "location": "query" + }, + "requestMetadata.experimentIds": { + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true + }, + "requestMetadata.trafficSource.trafficSubId": { + "location": "query", + "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "type": "string" + }, + "userId": { + "location": "path", + "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.", + "type": "string", + "required": true + }, + "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": { + "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" + } + }, + "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" + } + } + } + }, + "userEvents": { + "methods": { + "log": { + "description": "Logs a user event.", + "request": { + "$ref": "LogUserEventRequest" + }, + "response": { + "$ref": "LogUserEventResponse" }, - "parameterOrder": [] + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "flatPath": "v2/userEvents:log", + "id": "partners.userEvents.log", + "path": "v2/userEvents:log" } } } }, "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.", "default": "true", "type": "boolean", - "location": "query" + "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" + "type": "string", + "location": "query" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "callback": { + "description": "JSONP", "type": "string", - "location": "query", - "description": "JSONP" + "location": "query" }, "$.xgafv": { + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1184,15 +1180,9 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "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", @@ -1201,12 +1191,17 @@ "media", "proto" ], - "type": "string" + "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" + "type": "string", + "location": "query" }, "key": { "location": "query", @@ -1214,9 +1209,9 @@ "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" + "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", @@ -1225,2412 +1220,2417 @@ "type": "boolean" }, "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", "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", "location": "query" } }, "schemas": { - "Analytics": { - "description": "Analytics data for a `Company` within a single day.", + "User": { "type": "object", "properties": { - "searchViews": { - "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date.", - "$ref": "AnalyticsDataPoint" + "lastAccessTime": { + "format": "google-datetime", + "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly", + "type": "string" }, - "profileViews": { - "$ref": "AnalyticsDataPoint", - "description": "Instances of users viewing the `Company` profile\non the specified date." + "availableAdwordsManagerAccounts": { + "description": "This is the list of AdWords Manager Accounts the user has edit access to.\nIf the user has edit access to multiple accounts, the user can choose the\npreferred account and we use this when a personal account is needed. Can\nbe empty meaning the user has access to no accounts.\n@OutputOnly", + "items": { + "$ref": "AdWordsManagerAccountInfo" + }, + "type": "array" }, - "eventDate": { - "$ref": "Date", - "description": "Date on which these events occurred." + "primaryEmails": { + "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly", + "items": { + "type": "string" + }, + "type": "array" }, - "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": { - "url": { - "description": "The URL of the public profile.", + "internalId": { + "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.", "type": "string" }, + "examStatus": { + "items": { + "$ref": "ExamStatus" + }, + "type": "array", + "description": "The list of exams the user ever taken. For each type of exam, only one\nentry is listed." + }, "id": { - "description": "The ID which can be used to retrieve more details about the public profile.", + "description": "The ID of the user.", "type": "string" }, - "profileImage": { - "type": "string", - "description": "The URL to the main profile image of the public profile." + "publicProfile": { + "$ref": "PublicProfile", + "description": "Information about a user's external public profile outside Google Partners." }, - "displayImageUrl": { - "description": "The URL to the main display image of the public profile. Being deprecated.", - "type": "string" + "certificationStatus": { + "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", + "items": { + "$ref": "Certification" + }, + "type": "array" }, - "displayName": { - "description": "The display name of the public profile.", + "companyVerificationEmail": { + "description": "The email address used by the user used for company verification.\n@OutputOnly", "type": "string" + }, + "profile": { + "$ref": "UserProfile", + "description": "The profile information of a Partners user, contains all the directly\neditable user information." + }, + "company": { + "$ref": "CompanyRelation", + "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company." } }, - "id": "PublicProfile" + "id": "User", + "description": "A resource representing a user of the Partners platform." }, - "AdWordsManagerAccountInfo": { - "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186", - "type": "object", + "ListAnalyticsResponse": { "properties": { - "id": { - "format": "int64", - "description": "The AdWords Manager Account id.", - "type": "string" + "analytics": { + "items": { + "$ref": "Analytics" + }, + "type": "array", + "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date." }, - "customerName": { + "nextPageToken": { "type": "string", - "description": "Name of the customer this account represents." - } - }, - "id": "AdWordsManagerAccountInfo" - }, - "ResponseMetadata": { - "description": "Common data that is in each API response.", - "type": "object", - "properties": { - "debugInfo": { - "description": "Debug information about this request.", - "$ref": "DebugInfo" - } - }, - "id": "ResponseMetadata" - }, - "RecaptchaChallenge": { - "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", - "type": "object", - "properties": { - "id": { - "description": "The ID of the reCaptcha challenge.", - "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." }, - "response": { - "description": "The response to the reCaptcha challenge.", - "type": "string" + "analyticsSummary": { + "$ref": "AnalyticsSummary", + "description": "Aggregated information across the response's\nanalytics." + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "RecaptchaChallenge" + "id": "ListAnalyticsResponse", + "description": "Response message for\nListAnalytics.", + "type": "object" }, - "AvailableOffer": { - "description": "Available Offers to be distributed.", + "Company": { + "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.", "type": "object", "properties": { - "showSpecialOfferCopy": { - "description": "Should special text be shown on the offers page.", - "type": "boolean" - }, - "available": { - "format": "int32", - "description": "The number of codes for this offer that are available for distribution.", - "type": "integer" + "locations": { + "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.", + "items": { + "$ref": "Location" + }, + "type": "array" }, - "description": { - "description": "Description of the offer.", - "type": "string" + "convertedMinMonthlyBudget": { + "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code.", + "$ref": "Money" }, - "offerLevel": { - "type": "string", + "industries": { "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" + "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": "Level of this offer." + "description": "Industries the company can help with.", + "items": { + "enum": [ + "INDUSTRY_UNSPECIFIED", + "I_AUTOMOTIVE", + "I_BUSINESS_TO_BUSINESS", + "I_CONSUMER_PACKAGED_GOODS", + "I_EDUCATION", + "I_FINANCE", + "I_HEALTHCARE", + "I_MEDIA_AND_ENTERTAINMENT", + "I_RETAIL", + "I_TECHNOLOGY", + "I_TRAVEL" + ], + "type": "string" + }, + "type": "array" + }, + "additionalWebsites": { + "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.", + "items": { + "type": "string" + }, + "type": "array" + }, + "websiteUrl": { + "description": "URL of the company's website.", + "type": "string" + }, + "primaryAdwordsManagerAccountId": { + "format": "int64", + "description": "The Primary AdWords Manager Account id.", + "type": "string" }, "name": { - "description": "Name of the offer.", + "description": "The name of the company.", "type": "string" }, - "qualifiedCustomersComplete": { - "description": "Whether or not the list of qualified customers is definitely complete.", - "type": "boolean" + "localizedInfos": { + "description": "The list of localized info for the company.", + "items": { + "$ref": "LocalizedCompanyInfo" + }, + "type": "array" }, "id": { - "format": "int64", - "description": "ID of this offer.", + "description": "The ID of the company.", "type": "string" }, - "countryOfferInfos": { - "description": "Offer info by country.", + "certificationStatuses": { + "description": "The list of Google Partners certification statuses for the company.", "items": { - "$ref": "CountryOfferInfo" + "$ref": "CertificationStatus" }, "type": "array" }, - "offerType": { + "primaryLocation": { + "$ref": "Location", + "description": "The primary location of the company." + }, + "services": { "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." + "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." ], + "description": "Services the company can help with.", + "items": { + "enum": [ + "SERVICE_UNSPECIFIED", + "S_ADVANCED_ADWORDS_SUPPORT", + "S_ADVERTISING_ON_GOOGLE", + "S_AN_ENHANCED_WEBSITE", + "S_AN_ONLINE_MARKETING_PLAN", + "S_MOBILE_AND_VIDEO_ADS", + "S_MOBILE_WEBSITE_SERVICES" + ], + "type": "string" + }, + "type": "array" + }, + "originalMinMonthlyBudget": { + "$ref": "Money", + "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness." + }, + "publicProfile": { + "description": "Basic information from the company's public profile.", + "$ref": "PublicProfile" + }, + "ranks": { + "description": "Information related to the ranking of the company within the list of\ncompanies.", + "items": { + "$ref": "Rank" + }, + "type": "array" + }, + "specializationStatus": { + "description": "The list of Google Partners specialization statuses for the company.", + "items": { + "$ref": "SpecializationStatus" + }, + "type": "array" + }, + "badgeTier": { "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" + "BADGE_TIER_NONE", + "BADGE_TIER_REGULAR", + "BADGE_TIER_PREMIER" ], - "description": "Type of offer.", - "type": "string" - }, - "maxAccountAge": { - "format": "int32", - "description": "The maximum age of an account [in days] to be eligible.", - "type": "integer" + "description": "Partner badge tier", + "type": "string", + "enumDescriptions": [ + "Tier badge is not set.", + "Agency has regular partner badge.", + "Agency has premier badge." + ] }, - "qualifiedCustomer": { - "description": "Customers who qualify for this offer.", + "autoApprovalEmailDomains": { + "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.", "items": { - "$ref": "OfferCustomer" + "type": "string" }, "type": "array" }, - "terms": { - "description": "Terms of the offer.", + "companyTypes": { + "description": "Company type labels listed on the company's profile.", + "items": { + "enum": [ + "COMPANY_TYPE_UNSPECIFIED", + "FULL_SERVICE_AGENCY", + "MEDIA_AGENCY", + "CREATIVE_AGENCY", + "CDIGITAL_AGENCY", + "SEM_SEO", + "PERFORMANCE_MARKETING", + "ADVERTISING_TOOL_DEVELOPMENT", + "PR", + "SELF_MANAGED", + "RESELLER" + ], + "type": "string" + }, + "type": "array", + "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." + ] + }, + "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" - } - }, - "id": "AvailableOffer" - }, - "LatLng": { - "type": "object", - "properties": { - "longitude": { - "type": "number", - "format": "double", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0]." }, - "latitude": { - "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "type": "number" + "profileStatus": { + "description": "The public viewability status of the company's profile.", + "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." + ], + "enum": [ + "COMPANY_PROFILE_STATUS_UNSPECIFIED", + "HIDDEN", + "PUBLISHED", + "SEARCHABLE" + ] } }, - "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)" + "id": "Company" }, - "Money": { + "ListLeadsResponse": { + "description": "Response message for ListLeads.", "type": "object", "properties": { - "currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string" - }, - "nanos": { - "type": "integer", - "format": "int32", - "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." - }, - "units": { - "format": "int64", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "type": "string" - } - }, - "id": "Money", - "description": "Represents an amount of money with its currency type." - }, - "AnalyticsSummary": { - "type": "object", - "properties": { - "profileViewsCount": { - "type": "integer", - "format": "int32", - "description": "Aggregated number of profile views for the `Company` for given date range." + "nextPageToken": { + "type": "string", + "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." }, - "searchViewsCount": { + "totalSize": { "format": "int32", - "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.", + "description": "The total count of leads for the given company.", "type": "integer" }, - "contactsCount": { - "format": "int32", - "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", - "type": "integer" + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + }, + "leads": { + "description": "The list of leads.", + "items": { + "$ref": "Lead" + }, + "type": "array" } }, - "id": "AnalyticsSummary", - "description": "Analytics aggregated data for a `Company` for a given date range." + "id": "ListLeadsResponse" }, - "LogMessageRequest": { - "description": "Request message for\nLogClientMessage.", + "CreateLeadResponse": { + "description": "Response message for CreateLead.", "type": "object", "properties": { - "level": { - "type": "string", + "recaptchaStatus": { "enumDescriptions": [ "Unchosen.", - "Message level for tracing information.", - "Message level for informational messages.", - "Message level for potential problems.", - "Message level for serious failures." + "No reCaptcha validation needed.", + "reCaptcha challenge passed.", + "reCaptcha challenge failed." ], "enum": [ - "MESSAGE_LEVEL_UNSPECIFIED", - "ML_FINE", - "ML_INFO", - "ML_WARNING", - "ML_SEVERE" + "RECAPTCHA_STATUS_UNSPECIFIED", + "RS_NOT_NEEDED", + "RS_PASSED", + "RS_FAILED" ], - "description": "Message level of client message." - }, - "details": { - "description": "Details about the client message.", + "description": "The outcome of \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nvalidation.", "type": "string" }, - "clientInfo": { - "additionalProperties": { - "type": "string" - }, - "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", - "type": "object" + "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." }, - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Current request metadata." + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "LogMessageRequest" + "id": "CreateLeadResponse" }, - "DebugInfo": { - "type": "object", + "GetCompanyResponse": { "properties": { - "serviceUrl": { - "description": "URL of the service that handled this request.", - "type": "string" - }, - "serverTraceInfo": { - "description": "Server-side debug stack trace.", - "type": "string" + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." }, - "serverInfo": { - "description": "Info about the server that serviced this request.", - "type": "string" + "company": { + "$ref": "Company", + "description": "The company." } }, - "id": "DebugInfo", - "description": "Debug information about this request." + "id": "GetCompanyResponse", + "description": "Response message for GetCompany.", + "type": "object" }, - "Lead": { - "description": "A lead resource that represents an advertiser contact for a `Company`. These\nare usually generated via Google Partner Search (the advertiser portal).", + "Location": { + "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", "type": "object", "properties": { - "givenName": { - "description": "First name of lead source.", + "administrativeArea": { + "description": "Top-level administrative subdivision of this country.", "type": "string" }, - "minMonthlyBudget": { - "description": "The minimum monthly budget lead source is willing to spend.", - "$ref": "Money" - }, - "websiteUrl": { - "description": "Website URL of lead source.", + "locality": { + "description": "Generally refers to the city/town portion of an address.", "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" + "latLng": { + "description": "The latitude and longitude of the location, in degrees.", + "$ref": "LatLng" }, - "state": { - "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" - ], - "description": "The lead's state in relation to the company.", + "address": { + "description": "The single string version of the address.", "type": "string" }, - "gpsMotivations": { - "enumDescriptions": [ - "Unchosen.", - "Advertiser needs help with their advertising.", - "Advertiser needs help with their website.", - "Advertiser does not have a website." - ], - "description": "List of reasons for using Google Partner Search and creating a lead.", - "items": { - "type": "string", - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" - ] - }, - "type": "array" - }, - "email": { - "type": "string", - "description": "Email address of lead source." - }, - "familyName": { - "description": "Last name of lead source.", + "regionCode": { + "description": "CLDR (Common Locale Data Repository) region code .", "type": "string" }, - "id": { - "type": "string", - "description": "ID of the lead." - }, - "comments": { - "type": "string", - "description": "Comments lead source gave." - }, - "adwordsCustomerId": { - "format": "int64", - "description": "The AdWords Customer ID of the lead.", + "dependentLocality": { + "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.", "type": "string" }, - "phoneNumber": { - "description": "Phone number of lead source.", + "postalCode": { + "description": "Values are frequently alphanumeric.", "type": "string" }, - "createTime": { - "format": "google-datetime", - "description": "Timestamp of when this lead was created.", + "languageCode": { + "description": "Language code of the address. Should be in BCP 47 format.", "type": "string" }, - "marketingOptIn": { - "description": "Whether or not the lead signed up for marketing emails", - "type": "boolean" + "sortingCode": { + "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.", + "type": "string" }, - "type": { - "description": "Type of lead.", + "addressLine": { + "description": "The following address lines represent the most specific part of any\naddress.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "Location" + }, + "ExamToken": { + "description": "A token that allows a user to take an exam.", + "type": "object", + "properties": { + "examType": { + "description": "The type of the exam the token belongs to.", "type": "string", "enumDescriptions": [ "Unchosen.", - "Google Partner Search." + "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": [ - "LEAD_TYPE_UNSPECIFIED", - "LT_GPS" + "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" ] + }, + "examId": { + "format": "int64", + "description": "The id of the exam the token is for.", + "type": "string" + }, + "token": { + "description": "The token, only present if the user has access to the exam.", + "type": "string" } }, - "id": "Lead" + "id": "ExamToken" }, - "ListUserStatesResponse": { - "description": "Response message for\nListUserStates.", + "CertificationExamStatus": { + "description": "Status for a Google Partners certification exam.", "type": "object", "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" + "numberUsersPass": { + "format": "int32", + "description": "The number of people who have passed the certification exam.", + "type": "integer" }, - "userStates": { - "enumDescriptions": [ + "type": { + "description": "The type of certification exam.", + "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." + "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." ], - "description": "User's states.", - "items": { - "enum": [ - "USER_STATE_UNSPECIFIED", - "US_REQUIRES_RECAPTCHA_FOR_GPS_CONTACT" - ], - "type": "string" - }, - "type": "array" + "enum": [ + "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", + "CET_ADWORDS_FUNDAMENTALS", + "CET_ADWORDS_ADVANCED_SEARCH", + "CET_ADWORDS_ADVANCED_DISPLAY", + "CET_VIDEO_ADS", + "CET_DOUBLECLICK", + "CET_ANALYTICS", + "CET_SHOPPING", + "CET_MOBILE", + "CET_DIGITAL_SALES", + "CET_MOBILE_SITES" + ] } }, - "id": "ListUserStatesResponse" + "id": "CertificationExamStatus" }, - "CompanyRelation": { - "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.", + "OptIns": { + "description": "A set of opt-ins for a user.", "type": "object", "properties": { - "companyAdmin": { - "description": "Indicates if the user is an admin for this company.", + "specialOffers": { + "description": "An opt-in about receiving email regarding new features and products.", "type": "boolean" }, - "isPending": { - "description": "The flag that indicates if the company is pending verification.", + "performanceSuggestions": { + "type": "boolean", + "description": "An opt-in about receiving email with customized AdWords campaign management\ntips." + }, + "phoneContact": { + "description": "An opt-in to allow recieivng phone calls about their Partners account.", "type": "boolean" }, - "address": { - "type": "string", - "description": "The primary address for this company." + "physicalMail": { + "description": "An opt-in to receive special promotional gifts and material in the mail.", + "type": "boolean" }, - "creationTime": { - "format": "google-datetime", - "description": "The timestamp of when affiliation was requested.\n@OutputOnly", - "type": "string" + "marketComm": { + "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products.", + "type": "boolean" + } + }, + "id": "OptIns" + }, + "Rank": { + "description": "Information related to ranking of results.", + "type": "object", + "properties": { + "value": { + "format": "double", + "description": "The numerical value of the rank.", + "type": "number" }, - "state": { + "type": { + "description": "The type of rank.", + "type": "string", "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." + "Unchosen.", + "Total final score." ], "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.", + "RANK_TYPE_UNSPECIFIED", + "RT_FINAL_SCORE" + ] + } + }, + "id": "Rank" + }, + "UserProfile": { + "description": "The profile information of a Partners user.", + "type": "object", + "properties": { + "emailAddress": { + "description": "The email address the user has selected on the Partners site as primary.", "type": "string" }, - "primaryAddress": { - "$ref": "Location", - "description": "The primary location of the company." - }, - "managerAccount": { - "format": "int64", - "description": "The AdWords manager account # associated this company.", - "type": "string" + "channels": { + "description": "A list of ids representing which channels the user selected they were in.", + "items": { + "type": "string" + }, + "type": "array" }, - "name": { - "description": "The name (in the company's primary language) for the company.", - "type": "string" + "profilePublic": { + "description": "Whether the user's public profile is visible to anyone with the URL.", + "type": "boolean" }, - "segment": { + "jobFunctions": { + "description": "A list of ids represnting which job categories the user selected.", "items": { - "enum": [ - "COMPANY_SEGMENT_UNKNOWN", - "COMPANY_SEGMENT_NAL", - "COMPANY_SEGMENT_PSP", - "COMPANY_SEGMENT_PPSP" - ], "type": "string" }, - "type": "array", - "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" }, - "internalCompanyId": { - "description": "The internal company ID.\nOnly available for a whitelisted set of api clients.", + "givenName": { + "description": "The user's given name.", "type": "string" }, - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", + "address": { + "$ref": "Location", + "description": "The user's mailing address, contains multiple fields." + }, + "industries": { + "description": "A list of ids representing which industries the user selected.", "items": { - "$ref": "SpecializationStatus" + "type": "string" }, "type": "array" }, - "badgeTier": { - "description": "Whether the company is a Partner.", - "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" - ] - }, - "phoneNumber": { - "description": "The phone number for the company's primary address.", - "type": "string" + "languages": { + "description": "The list of languages this user understands.", + "items": { + "type": "string" + }, + "type": "array" }, - "website": { - "description": "The website URL for this company.", + "familyName": { + "description": "The user's family name.", "type": "string" }, - "primaryCountryCode": { - "description": "The primary country code of the company.", - "type": "string" + "emailOptIns": { + "$ref": "OptIns", + "description": "The list of opt-ins for the user, related to communication preferences." }, - "companyId": { - "description": "The ID of the company. There may be no id if this is a\npending company.5", - "type": "string" + "markets": { + "description": "A list of ids representing which markets the user was interested in.", + "items": { + "type": "string" + }, + "type": "array" }, - "primaryLanguageCode": { - "description": "The primary language code of the company.", + "phoneNumber": { + "description": "The user's phone number.", "type": "string" }, - "logoUrl": { - "description": "A URL to a profile photo, e.g. a G+ profile photo.", + "adwordsManagerAccount": { + "format": "int64", + "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.", "type": "string" }, - "resolvedTimestamp": { - "format": "google-datetime", - "description": "The timestamp when the user was approved.\n@OutputOnly", + "primaryCountryCode": { + "description": "The user's primary country, an ISO 2-character code.", "type": "string" } }, - "id": "CompanyRelation" + "id": "UserProfile" }, - "Date": { + "GetPartnersStatusResponse": { + "id": "GetPartnersStatusResponse", + "description": "Response message for\nGetPartnersStatus.", "type": "object", "properties": { - "day": { - "format": "int32", - "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.", - "type": "integer" - }, - "year": { - "format": "int32", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "type": "integer" - }, - "month": { - "format": "int32", - "description": "Month of year. Must be from 1 to 12.", - "type": "integer" + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" } - }, - "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`." - }, - "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.", + "HistoricalOffer": { + "description": "Historical information about a Google Partners Offer.", "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.", + "clientId": { + "format": "int64", + "description": "ID of client.", "type": "string" }, - "trafficSubId": { - "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.", + "clientName": { + "description": "Name of the client.", "type": "string" - } - }, - "id": "TrafficSource" - }, - "CreateLeadRequest": { - "properties": { - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Current request metadata." - }, - "recaptchaChallenge": { - "$ref": "RecaptchaChallenge", - "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info." - }, - "lead": { - "$ref": "Lead", - "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided." - } - }, - "id": "CreateLeadRequest", - "description": "Request message for CreateLead.", - "type": "object" - }, - "RequestMetadata": { - "type": "object", - "properties": { - "trafficSource": { - "$ref": "TrafficSource", - "description": "Source of traffic for the current request." - }, - "experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "items": { - "type": "string" - }, - "type": "array" }, - "locale": { - "description": "Locale to use for the current request.", + "lastModifiedTime": { + "format": "google-datetime", + "description": "Time last action was taken.", "type": "string" }, - "partnersSessionId": { - "type": "string", - "description": "Google Partners session ID." + "adwordsUrl": { + "description": "Client's AdWords page URL.", + "type": "string" }, - "userOverrides": { - "description": "Values to use instead of the user's respective defaults for the current\nrequest. These are only honored by whitelisted products.", - "$ref": "UserOverrides" - } - }, - "id": "RequestMetadata", - "description": "Common data that is in each API request." - }, - "EventData": { - "description": "Key value data pair for an event.", - "type": "object", - "properties": { - "key": { + "offerType": { "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\\]." + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." ], "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" + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" ], - "description": "Data type.", + "description": "Type of offer.", "type": "string" }, - "values": { - "description": "Data values.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "EventData" - }, - "ExamStatus": { - "description": "A user's information on a specific exam.", - "type": "object", - "properties": { - "lastPassed": { - "format": "google-datetime", - "description": "The date the user last passed this exam.", + "senderName": { + "description": "Name (First + Last) of the partners user to whom the incentive is allocated.", "type": "string" }, - "examType": { - "enumDescriptions": [ - "Unchosen.", - "Adwords Fundamentals exam.", - "AdWords advanced search exam.", - "AdWords advanced display exam.", - "VideoAds exam.", - "DoubleClick exam.", - "Analytics exam.", - "Shopping exam.", - "Mobile exam.", - "Digital Sales exam.", - "Mobile Sites exam." - ], - "enum": [ - "CERTIFICATION_EXAM_TYPE_UNSPECIFIED", - "CET_ADWORDS_FUNDAMENTALS", - "CET_ADWORDS_ADVANCED_SEARCH", - "CET_ADWORDS_ADVANCED_DISPLAY", - "CET_VIDEO_ADS", - "CET_DOUBLECLICK", - "CET_ANALYTICS", - "CET_SHOPPING", - "CET_MOBILE", - "CET_DIGITAL_SALES", - "CET_MOBILE_SITES" - ], - "description": "The type of the exam.", + "offerCountryCode": { + "description": "Country Code for the offer country.", "type": "string" }, - "taken": { + "expirationTime": { "format": "google-datetime", - "description": "The date the user last taken this exam.", + "description": "Time this offer expires.", "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" + "offerCode": { + "description": "Offer code.", + "type": "string" }, - "expiration": { + "creationTime": { "format": "google-datetime", - "description": "Date this exam is due to expire.", + "description": "Time offer was first created.", "type": "string" - } - }, - "id": "ExamStatus" - }, - "ListOffersResponse": { - "description": "Response for ListOffer.", - "type": "object", - "properties": { - "noOfferReason": { + }, + "status": { + "type": "string", "enumDescriptions": [ "Unset.", - "Not an MCC.", - "Offer limit has been reached.", - "Ineligible for offers." + "Offer distributed.", + "Offer redeemed.", + "Offer awarded.", + "Offer expired." ], "enum": [ - "NO_OFFER_REASON_UNSPECIFIED", - "NO_OFFER_REASON_NO_MCC", - "NO_OFFER_REASON_LIMIT_REACHED", - "NO_OFFER_REASON_INELIGIBLE" + "OFFER_STATUS_UNSPECIFIED", + "OFFER_STATUS_DISTRIBUTED", + "OFFER_STATUS_REDEEMED", + "OFFER_STATUS_AWARDED", + "OFFER_STATUS_EXPIRED" ], - "description": "Reason why no Offers are available.", - "type": "string" - }, - "availableOffers": { - "description": "Available Offers to be distributed.", - "items": { - "$ref": "AvailableOffer" - }, - "type": "array" + "description": "Status of the offer." }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." + "clientEmail": { + "description": "Email address for client.", + "type": "string" } }, - "id": "ListOffersResponse" + "id": "HistoricalOffer" }, - "CountryOfferInfo": { - "description": "Offer info by country.", + "UserOverrides": { + "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.", "type": "object", "properties": { - "spendXAmount": { - "description": "(localized) Spend X amount for that country's offer.", + "userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", "type": "string" }, - "offerCountryCode": { - "type": "string", - "description": "Country code for which offer codes may be requested." - }, - "offerType": { - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of offer country is eligible for.", - "type": "string" - }, - "getYAmount": { - "description": "(localized) Get Y 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.", + "ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" - }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "companies": { - "description": "The list of companies.", - "items": { - "$ref": "Company" - }, - "type": "array" } }, - "id": "ListCompaniesResponse" - }, - "OfferCustomer": { - "id": "OfferCustomer", - "description": "Customers qualified for an offer.", - "type": "object", - "properties": { - "adwordsUrl": { - "description": "URL to the customer's AdWords page.", - "type": "string" - }, - "creationTime": { - "type": "string", - "format": "google-datetime", - "description": "Time the customer was created." - }, - "eligibilityDaysLeft": { - "format": "int32", - "description": "Days the customer is still eligible.", - "type": "integer" - }, - "offerType": { - "type": "string", - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of the offer" - }, - "externalCid": { - "format": "int64", - "description": "External CID for the customer.", - "type": "string" - }, - "countryCode": { - "description": "Country code of the customer.", - "type": "string" - }, - "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": "UserOverrides" }, - "CertificationStatus": { - "description": "Google Partners certification status.", + "LogUserEventRequest": { "type": "object", "properties": { - "isCertified": { - "type": "boolean", - "description": "Whether certification is passing." - }, - "examStatuses": { - "description": "List of certification exam statuses.", - "items": { - "$ref": "CertificationExamStatus" - }, - "type": "array" - }, - "type": { + "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" + "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 type of the certification." - }, - "userCount": { - "type": "integer", - "format": "int32", - "description": "Number of people who are certified," - } - }, - "id": "CertificationStatus" - }, - "LocalizedCompanyInfo": { - "description": "The localized company information.", - "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "overview": { - "description": "Localized brief description that the company uses to advertise themselves.", - "type": "string" - }, - "displayName": { - "type": "string", - "description": "Localized display name." - } - }, - "id": "LocalizedCompanyInfo" - }, - "LogUserEventResponse": { - "description": "Response message for\nLogUserEvent.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - } - }, - "id": "LogUserEventResponse" - }, - "ListOffersHistoryResponse": { - "description": "Response for ListOfferHistory.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "canShowEntireCompany": { - "description": "True if the user has the option to show entire company history.", - "type": "boolean" - }, - "totalResults": { - "format": "int32", - "description": "Number of results across all pages.", - "type": "integer" - }, - "showingEntireCompany": { - "description": "True if this response is showing entire company history.", - "type": "boolean" + "description": "The category the action belongs to." }, - "offers": { - "description": "Historical offers meeting request.", - "items": { - "$ref": "HistoricalOffer" - }, - "type": "array" + "lead": { + "$ref": "Lead", + "description": "Advertiser lead information." }, - "nextPageToken": { - "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", - "type": "string" - } - }, - "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": { - "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" - }, - "badgeSpecialization": { - "enumDescriptions": [ - "Unknown specialization", - "AdWords Search specialization", - "AdWords Display specialization", - "AdWords Mobile specialization", - "AdWords Video specialization", - "AdWords Shopping specialization" - ], + "eventAction": { "enum": [ - "BADGE_SPECIALIZATION_UNKNOWN", - "BADGE_SPECIALIZATION_ADWORDS_SEARCH", - "BADGE_SPECIALIZATION_ADWORDS_DISPLAY", - "BADGE_SPECIALIZATION_ADWORDS_MOBILE", - "BADGE_SPECIALIZATION_ADWORDS_VIDEO", - "BADGE_SPECIALIZATION_ADWORDS_SHOPPING" + "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", + "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" ], - "description": "The specialization this status is for.", - "type": "string" - } - }, - "id": "SpecializationStatus" - }, - "Certification": { - "properties": { - "certificationType": { + "description": "The action that occurred.", "type": "string", "enumDescriptions": [ "Unchosen.", - "AdWords certified.", - "YouTube certified.", - "VideoAds certified.", - "Analytics certified.", - "DoubleClick certified.", - "Shopping certified.", - "Mobile certified.", - "Digital sales certified.", - "AdWords Search certified.", - "AdWords Display certified.", - "Mobile Sites certified." - ], - "enum": [ - "CERTIFICATION_TYPE_UNSPECIFIED", - "CT_ADWORDS", - "CT_YOUTUBE", - "CT_VIDEOADS", - "CT_ANALYTICS", - "CT_DOUBLECLICK", - "CT_SHOPPING", - "CT_MOBILE", - "CT_DIGITAL_SALES", - "CT_ADWORDS_SEARCH", - "CT_ADWORDS_DISPLAY", - "CT_MOBILE_SITES" - ], - "description": "The type of certification, the area of expertise." - }, - "lastAchieved": { - "format": "google-datetime", - "description": "The date the user last achieved certification.", - "type": "string" - }, - "warning": { - "description": "Whether this certification is in the state of warning.", - "type": "boolean" - }, - "expiration": { - "format": "google-datetime", - "description": "Date this certification is due to expire.", - "type": "string" - }, - "achieved": { - "type": "boolean", - "description": "Whether this certification has been achieved." - } - }, - "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" - }, - "profile": { - "description": "The profile information of a Partners user, contains all the directly\neditable user information.", - "$ref": "UserProfile" - }, - "lastAccessTime": { - "format": "google-datetime", - "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly", - "type": "string" - }, - "primaryEmails": { - "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly", - "items": { - "type": "string" - }, - "type": "array" - }, - "availableAdwordsManagerAccounts": { - "items": { - "$ref": "AdWordsManagerAccountInfo" - }, - "type": "array", - "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" - }, - "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.", - "items": { - "$ref": "ExamStatus" - }, - "type": "array" + "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.", + "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." + ] }, - "id": { - "description": "The ID of the user.", + "url": { + "description": "The URL where the event occurred.", "type": "string" }, - "publicProfile": { - "$ref": "PublicProfile", - "description": "Information about a user's external public profile outside Google Partners." + "requestMetadata": { + "description": "Current request metadata.", + "$ref": "RequestMetadata" }, - "companyVerificationEmail": { - "description": "The email address used by the user used for company verification.\n@OutputOnly", - "type": "string" + "eventScope": { + "description": "The scope of the event.", + "type": "string", + "enumDescriptions": [ + "Unchosen.", + "Based on visitor.", + "Based on session.", + "Based on page visit." + ], + "enum": [ + "EVENT_SCOPE_UNSPECIFIED", + "VISITOR", + "SESSION", + "PAGE" + ] }, - "certificationStatus": { - "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", - "items": { - "$ref": "Certification" - }, - "type": "array" - } - }, - "id": "User" - }, - "ListAnalyticsResponse": { - "type": "object", - "properties": { - "analytics": { - "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.", + "eventDatas": { + "description": "List of event data for the event.", "items": { - "$ref": "Analytics" + "$ref": "EventData" }, "type": "array" - }, - "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" - }, - "analyticsSummary": { - "$ref": "AnalyticsSummary", - "description": "Aggregated information across the response's\nanalytics." - }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" } }, - "id": "ListAnalyticsResponse", - "description": "Response message for\nListAnalytics." + "id": "LogUserEventRequest", + "description": "Request message for\nLogUserEvent." }, - "ListLeadsResponse": { - "id": "ListLeadsResponse", - "description": "Response message for ListLeads.", + "AnalyticsDataPoint": { + "id": "AnalyticsDataPoint", + "description": "Details of the analytics events for a `Company` within a single day.", "type": "object", "properties": { - "totalSize": { + "eventCount": { "format": "int32", - "description": "The total count of leads for the given company.", + "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).", "type": "integer" }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - }, - "leads": { - "description": "The list of leads.", + "eventLocations": { + "description": "Location information of where these events occurred.", "items": { - "$ref": "Lead" + "$ref": "LatLng" }, "type": "array" - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the `ListLeadsRequest.page_token` field in the\nsubsequent call to\nListLeads to retrieve the\nnext page of results.", - "type": "string" } } }, - "Company": { + "Analytics": { + "description": "Analytics data for a `Company` within a single day.", + "type": "object", "properties": { - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", - "items": { - "$ref": "SpecializationStatus" - }, - "type": "array" - }, - "badgeTier": { - "enumDescriptions": [ - "Tier badge is not set.", - "Agency has regular partner badge.", - "Agency has premier badge." - ], - "enum": [ - "BADGE_TIER_NONE", - "BADGE_TIER_REGULAR", - "BADGE_TIER_PREMIER" - ], - "description": "Partner badge tier", - "type": "string" + "contacts": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users contacting the `Company`\non the specified date." }, - "autoApprovalEmailDomains": { - "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.", - "items": { - "type": "string" - }, - "type": "array" + "searchViews": { + "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date.", + "$ref": "AnalyticsDataPoint" }, - "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.", - "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" - ] - }, - "type": "array" + "profileViews": { + "description": "Instances of users viewing the `Company` profile\non the specified date.", + "$ref": "AnalyticsDataPoint" }, - "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\").", + "eventDate": { + "$ref": "Date", + "description": "Date on which these events occurred." + } + }, + "id": "Analytics" + }, + "PublicProfile": { + "description": "Basic information from a public profile.", + "type": "object", + "properties": { + "profileImage": { + "description": "The URL to the main profile image of the public profile.", "type": "string" }, - "profileStatus": { - "enumDescriptions": [ - "Unchosen.", - "Company profile does not show up publicly.", - "Company profile can only be viewed by the profile's URL\nand not by Google Partner Search.", - "Company profile can be viewed by the profile's URL\nand by Google Partner Search." - ], - "enum": [ - "COMPANY_PROFILE_STATUS_UNSPECIFIED", - "HIDDEN", - "PUBLISHED", - "SEARCHABLE" - ], - "description": "The public viewability status of the company's profile.", + "displayImageUrl": { + "description": "The URL to the main display image of the public profile. Being deprecated.", "type": "string" }, - "locations": { - "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.", - "items": { - "$ref": "Location" - }, - "type": "array" - }, - "convertedMinMonthlyBudget": { - "$ref": "Money", - "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code." + "displayName": { + "description": "The display name of the public profile.", + "type": "string" }, - "industries": { - "description": "Industries the company can help with.", - "items": { - "enum": [ - "INDUSTRY_UNSPECIFIED", - "I_AUTOMOTIVE", - "I_BUSINESS_TO_BUSINESS", - "I_CONSUMER_PACKAGED_GOODS", - "I_EDUCATION", - "I_FINANCE", - "I_HEALTHCARE", - "I_MEDIA_AND_ENTERTAINMENT", - "I_RETAIL", - "I_TECHNOLOGY", - "I_TRAVEL" - ], - "type": "string" - }, - "type": "array", - "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." - ] + "url": { + "description": "The URL of the public profile.", + "type": "string" }, - "websiteUrl": { - "description": "URL of the company's website.", + "id": { + "description": "The ID which can be used to retrieve more details about the public profile.", "type": "string" + } + }, + "id": "PublicProfile" + }, + "AdWordsManagerAccountInfo": { + "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186", + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "int64", + "description": "The AdWords Manager Account id." }, - "additionalWebsites": { - "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.", - "items": { - "type": "string" - }, - "type": "array" + "customerName": { + "description": "Name of the customer this account represents.", + "type": "string" + } + }, + "id": "AdWordsManagerAccountInfo" + }, + "ResponseMetadata": { + "id": "ResponseMetadata", + "description": "Common data that is in each API response.", + "type": "object", + "properties": { + "debugInfo": { + "$ref": "DebugInfo", + "description": "Debug information about this request." + } + } + }, + "RecaptchaChallenge": { + "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", + "type": "object", + "properties": { + "response": { + "type": "string", + "description": "The response to the reCaptcha challenge." }, - "primaryAdwordsManagerAccountId": { - "format": "int64", - "description": "The Primary AdWords Manager Account id.", + "id": { + "description": "The ID of the reCaptcha challenge.", "type": "string" + } + }, + "id": "RecaptchaChallenge" + }, + "AvailableOffer": { + "description": "Available Offers to be distributed.", + "type": "object", + "properties": { + "qualifiedCustomersComplete": { + "description": "Whether or not the list of qualified customers is definitely complete.", + "type": "boolean" }, - "name": { - "description": "The name of the company.", + "id": { + "format": "int64", + "description": "ID of this offer.", "type": "string" }, - "localizedInfos": { - "description": "The list of localized info for the company.", + "countryOfferInfos": { + "description": "Offer info by country.", "items": { - "$ref": "LocalizedCompanyInfo" + "$ref": "CountryOfferInfo" }, "type": "array" }, - "certificationStatuses": { - "description": "The list of Google Partners certification statuses for the company.", + "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": { + "format": "int32", + "description": "The maximum age of an account [in days] to be eligible.", + "type": "integer" + }, + "qualifiedCustomer": { "items": { - "$ref": "CertificationStatus" + "$ref": "OfferCustomer" }, - "type": "array" + "type": "array", + "description": "Customers who qualify for this offer." }, - "id": { - "description": "The ID of the company.", + "terms": { + "description": "Terms of the offer.", "type": "string" }, - "primaryLocation": { - "description": "The primary location of the company.", - "$ref": "Location" + "showSpecialOfferCopy": { + "description": "Should special text be shown on the offers page.", + "type": "boolean" }, - "services": { - "items": { - "enum": [ - "SERVICE_UNSPECIFIED", - "S_ADVANCED_ADWORDS_SUPPORT", - "S_ADVERTISING_ON_GOOGLE", - "S_AN_ENHANCED_WEBSITE", - "S_AN_ONLINE_MARKETING_PLAN", - "S_MOBILE_AND_VIDEO_ADS", - "S_MOBILE_WEBSITE_SERVICES" - ], - "type": "string" - }, - "type": "array", - "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." - ], - "description": "Services the company can help with." - }, - "originalMinMonthlyBudget": { - "$ref": "Money", - "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness." + "available": { + "type": "integer", + "format": "int32", + "description": "The number of codes for this offer that are available for distribution." }, - "publicProfile": { - "$ref": "PublicProfile", - "description": "Basic information from the company's public profile." + "description": { + "description": "Description of the offer.", + "type": "string" }, - "ranks": { - "description": "Information related to the ranking of the company within the list of\ncompanies.", - "items": { - "$ref": "Rank" - }, - "type": "array" - } - }, - "id": "Company", - "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.", - "type": "object" - }, - "CreateLeadResponse": { - "type": "object", - "properties": { - "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.", + "offerLevel": { + "description": "Level of this offer.", "type": "string", "enumDescriptions": [ - "Unchosen.", - "No reCaptcha validation needed.", - "reCaptcha challenge passed.", - "reCaptcha challenge failed." + "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" ] }, - "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." - }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." + "name": { + "description": "Name of the offer.", + "type": "string" } }, - "id": "CreateLeadResponse", - "description": "Response message for CreateLead." + "id": "AvailableOffer" }, - "GetCompanyResponse": { - "description": "Response message for GetCompany.", + "LatLng": { "type": "object", "properties": { - "company": { - "$ref": "Company", - "description": "The company." + "longitude": { + "format": "double", + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "type": "number" }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." + "latitude": { + "type": "number", + "format": "double", + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0]." } }, - "id": "GetCompanyResponse" + "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)" }, - "Location": { - "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", + "Money": { + "description": "Represents an amount of money with its currency type.", "type": "object", "properties": { - "administrativeArea": { - "description": "Top-level administrative subdivision of this country.", - "type": "string" - }, - "locality": { - "description": "Generally refers to the city/town portion of an address.", - "type": "string" - }, - "latLng": { - "description": "The latitude and longitude of the location, in degrees.", - "$ref": "LatLng" - }, - "address": { - "description": "The single string version of the address.", - "type": "string" - }, - "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.", + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", "type": "string" }, - "postalCode": { - "description": "Values are frequently alphanumeric.", - "type": "string" + "nanos": { + "format": "int32", + "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.", + "type": "integer" }, - "languageCode": { - "description": "Language code of the address. Should be in BCP 47 format.", + "units": { + "format": "int64", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", "type": "string" + } + }, + "id": "Money" + }, + "AnalyticsSummary": { + "description": "Analytics aggregated data for a `Company` for a given date range.", + "type": "object", + "properties": { + "searchViewsCount": { + "format": "int32", + "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.", + "type": "integer" }, - "sortingCode": { - "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.", - "type": "string" + "contactsCount": { + "format": "int32", + "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", + "type": "integer" }, - "addressLine": { - "description": "The following address lines represent the most specific part of any\naddress.", - "items": { - "type": "string" - }, - "type": "array" + "profileViewsCount": { + "format": "int32", + "description": "Aggregated number of profile views for the `Company` for given date range.", + "type": "integer" } }, - "id": "Location" + "id": "AnalyticsSummary" }, - "ExamToken": { - "description": "A token that allows a user to take an exam.", + "LogMessageRequest": { + "description": "Request message for\nLogClientMessage.", "type": "object", "properties": { - "examType": { + "level": { "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" + "MESSAGE_LEVEL_UNSPECIFIED", + "ML_FINE", + "ML_INFO", + "ML_WARNING", + "ML_SEVERE" ], - "description": "The type of the exam the token belongs to.", + "description": "Message level of client message.", "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." + "Message level for tracing information.", + "Message level for informational messages.", + "Message level for potential problems.", + "Message level for serious failures." ] }, - "examId": { - "format": "int64", - "description": "The id of the exam the token is for.", + "details": { + "description": "Details about the client message.", "type": "string" }, - "token": { - "description": "The token, only present if the user has access to the exam.", - "type": "string" + "clientInfo": { + "additionalProperties": { + "type": "string" + }, + "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", + "type": "object" + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." } }, - "id": "ExamToken" + "id": "LogMessageRequest" }, - "CertificationExamStatus": { - "description": "Status for a Google Partners certification exam.", + "Lead": { + "id": "Lead", + "description": "A lead resource that represents an advertiser contact for a `Company`. These\nare usually generated via Google Partner Search (the advertiser portal).", "type": "object", "properties": { + "createTime": { + "format": "google-datetime", + "description": "Timestamp of when this lead was created.", + "type": "string" + }, + "marketingOptIn": { + "description": "Whether or not the lead signed up for marketing emails", + "type": "boolean" + }, "type": { - "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.", - "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." - ] - }, - "numberUsersPass": { - "format": "int32", - "description": "The number of people who have passed the certification exam.", - "type": "integer" - } - }, - "id": "CertificationExamStatus" - }, - "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" + "Google Partner Search." + ], + "enum": [ + "LEAD_TYPE_UNSPECIFIED", + "LT_GPS" + ], + "description": "Type of lead.", + "type": "string" }, - "performanceSuggestions": { - "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.", - "type": "boolean" + "minMonthlyBudget": { + "$ref": "Money", + "description": "The minimum monthly budget lead source is willing to spend." }, - "phoneContact": { - "description": "An opt-in to allow recieivng phone calls about their Partners account.", - "type": "boolean" + "givenName": { + "description": "First name of lead source.", + "type": "string" }, - "physicalMail": { - "type": "boolean", - "description": "An opt-in to receive special promotional gifts and material in the mail." + "websiteUrl": { + "description": "Website URL of lead source.", + "type": "string" }, - "marketComm": { - "type": "boolean", - "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products." - } - }, - "id": "OptIns" - }, - "Rank": { - "properties": { - "value": { - "format": "double", - "description": "The numerical value of the rank.", - "type": "number" + "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" }, - "type": { + "state": { "enumDescriptions": [ "Unchosen.", - "Total final score." + "Lead not yet contacted.", + "Lead has been contacted.", + "Lead has become a client.", + "Lead in a state not covered by other options." ], "enum": [ - "RANK_TYPE_UNSPECIFIED", - "RT_FINAL_SCORE" + "LEAD_STATE_UNSPECIFIED", + "LEAD", + "CONTACTED", + "CLIENT", + "OTHER" ], - "description": "The type of rank.", + "description": "The lead's state in relation to the company.", "type": "string" - } - }, - "id": "Rank", - "description": "Information related to ranking of results.", - "type": "object" - }, - "GetPartnersStatusResponse": { - "description": "Response message for\nGetPartnersStatus.", - "type": "object", - "properties": { - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - } - }, - "id": "GetPartnersStatusResponse" - }, - "UserProfile": { - "properties": { - "address": { - "description": "The user's mailing address, contains multiple fields.", - "$ref": "Location" }, - "industries": { - "description": "A list of ids representing which industries 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.", "items": { + "enum": [ + "GPS_MOTIVATION_UNSPECIFIED", + "GPSM_HELP_WITH_ADVERTISING", + "GPSM_HELP_WITH_WEBSITE", + "GPSM_NO_WEBSITE" + ], "type": "string" }, "type": "array" }, - "emailOptIns": { - "$ref": "OptIns", - "description": "The list of opt-ins for the user, related to communication preferences." + "email": { + "description": "Email address of lead source.", + "type": "string" }, "familyName": { - "description": "The user's family name.", + "description": "Last name of lead source.", "type": "string" }, - "languages": { - "description": "The list of languages this user understands.", - "items": { - "type": "string" - }, - "type": "array" - }, - "markets": { - "description": "A list of ids representing which markets the user was interested in.", - "items": { - "type": "string" - }, - "type": "array" + "id": { + "description": "ID of the lead.", + "type": "string" }, - "phoneNumber": { - "description": "The user's phone number.", + "comments": { + "description": "Comments lead source gave.", "type": "string" }, - "adwordsManagerAccount": { + "adwordsCustomerId": { "format": "int64", - "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.", + "description": "The AdWords Customer ID of the lead.", "type": "string" }, - "primaryCountryCode": { - "description": "The user's primary country, an ISO 2-character code.", + "phoneNumber": { + "description": "Phone number of lead source.", "type": "string" - }, - "emailAddress": { - "description": "The email address the user has selected on the Partners site as primary.", + } + } + }, + "DebugInfo": { + "type": "object", + "properties": { + "serverTraceInfo": { + "description": "Server-side debug stack trace.", "type": "string" }, - "channels": { - "description": "A list of ids representing which channels the user selected they were in.", - "items": { - "type": "string" - }, - "type": "array" - }, - "profilePublic": { - "description": "Whether the user's public profile is visible to anyone with the URL.", - "type": "boolean" + "serverInfo": { + "description": "Info about the server that serviced this request.", + "type": "string" }, - "jobFunctions": { - "description": "A list of ids represnting which job categories the user selected.", + "serviceUrl": { + "description": "URL of the service that handled this request.", + "type": "string" + } + }, + "id": "DebugInfo", + "description": "Debug information about this request." + }, + "ListUserStatesResponse": { + "description": "Response message for\nListUserStates.", + "type": "object", + "properties": { + "userStates": { + "enumDescriptions": [ + "Unchosen.", + "User must pass \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e to\ncontact a Partner via Google Partner Search." + ], + "description": "User's states.", "items": { + "enum": [ + "USER_STATE_UNSPECIFIED", + "US_REQUIRES_RECAPTCHA_FOR_GPS_CONTACT" + ], "type": "string" }, "type": "array" }, - "givenName": { - "description": "The user's given name.", - "type": "string" + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" } }, - "id": "UserProfile", - "description": "The profile information of a Partners user.", - "type": "object" + "id": "ListUserStatesResponse" }, - "HistoricalOffer": { - "description": "Historical information about a Google Partners Offer.", + "CompanyRelation": { + "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.", "type": "object", "properties": { - "offerType": { - "enumDescriptions": [ - "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." - ], - "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of offer.", + "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.", - "type": "string" + "resolvedTimestamp": { + "type": "string", + "format": "google-datetime", + "description": "The timestamp when the user was approved.\n@OutputOnly" }, - "offerCountryCode": { - "description": "Country Code for the offer country.", - "type": "string" + "companyAdmin": { + "description": "Indicates if the user is an admin for this company.", + "type": "boolean" }, - "expirationTime": { - "format": "google-datetime", - "description": "Time this offer expires.", - "type": "string" + "isPending": { + "type": "boolean", + "description": "The flag that indicates if the company is pending verification." }, - "offerCode": { - "description": "Offer code.", + "address": { + "description": "The primary address for this company.", "type": "string" }, "creationTime": { "format": "google-datetime", - "description": "Time offer was first created.", + "description": "The timestamp of when affiliation was requested.\n@OutputOnly", "type": "string" }, - "status": { - "description": "Status of the offer.", + "state": { + "description": "The state of relationship, in terms of approvals.", "type": "string", "enumDescriptions": [ - "Unset.", - "Offer distributed.", - "Offer redeemed.", - "Offer awarded.", - "Offer expired." - ], - "enum": [ - "OFFER_STATUS_UNSPECIFIED", - "OFFER_STATUS_DISTRIBUTED", - "OFFER_STATUS_REDEEMED", - "OFFER_STATUS_AWARDED", - "OFFER_STATUS_EXPIRED" + "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" ] }, - "clientEmail": { - "description": "Email address for client.", - "type": "string" + "primaryAddress": { + "description": "The primary location of the company.", + "$ref": "Location" }, - "clientId": { + "managerAccount": { "format": "int64", - "description": "ID of client.", + "description": "The AdWords manager account # associated this company.", "type": "string" }, - "clientName": { - "description": "Name of the client.", + "name": { + "description": "The name (in the company's primary language) for the company.", "type": "string" }, - "lastModifiedTime": { - "format": "google-datetime", - "description": "Time last action was taken.", + "segment": { + "description": "The segment the company is classified as.", + "items": { + "enum": [ + "COMPANY_SEGMENT_UNKNOWN", + "COMPANY_SEGMENT_NAL", + "COMPANY_SEGMENT_PSP", + "COMPANY_SEGMENT_PPSP" + ], + "type": "string" + }, + "type": "array", + "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." + ] + }, + "internalCompanyId": { + "description": "The internal company ID.\nOnly available for a whitelisted set of api clients.", "type": "string" }, - "adwordsUrl": { - "description": "Client's AdWords page URL.", + "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." + ] + }, + "specializationStatus": { + "items": { + "$ref": "SpecializationStatus" + }, + "type": "array", + "description": "The list of Google Partners specialization statuses for the company." + }, + "phoneNumber": { + "description": "The phone number for the company's primary address.", + "type": "string" + }, + "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": { + "type": "string", + "description": "The primary language code of the company." } }, - "id": "HistoricalOffer" + "id": "CompanyRelation" }, - "UserOverrides": { + "Date": { + "id": "Date", + "description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.", + "type": "object", "properties": { - "ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", + "month": { + "type": "integer", + "format": "int32", + "description": "Month of year. Must be from 1 to 12." + }, + "day": { + "format": "int32", + "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.", + "type": "integer" + }, + "year": { + "format": "int32", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "type": "integer" + } + } + }, + "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" + }, + "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" }, - "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", - "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.", - "type": "object" + "id": "TrafficSource" }, - "LogUserEventRequest": { - "description": "Request message for\nLogUserEvent.", + "RequestMetadata": { + "description": "Common data that is in each API request.", "type": "object", "properties": { - "eventAction": { - "description": "The action that occurred.", + "locale": { + "type": "string", + "description": "Locale to use for the current request." + }, + "partnersSessionId": { + "description": "Google Partners session ID.", + "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." + }, + "trafficSource": { + "$ref": "TrafficSource", + "description": "Source of traffic for the current request." + }, + "experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "RequestMetadata" + }, + "CreateLeadRequest": { + "description": "Request message for CreateLead.", + "type": "object", + "properties": { + "requestMetadata": { + "description": "Current request metadata.", + "$ref": "RequestMetadata" + }, + "recaptchaChallenge": { + "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", + "$ref": "RecaptchaChallenge" + }, + "lead": { + "$ref": "Lead", + "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided." + } + }, + "id": "CreateLeadRequest" + }, + "EventData": { + "description": "Key value data pair for an event.", + "type": "object", + "properties": { + "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.", - "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.", - "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." + "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\\]." + ] + }, + "values": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Data values." + } + }, + "id": "EventData" + }, + "ExamStatus": { + "description": "A user's information on a specific exam.", + "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" + ] + }, + "passed": { + "description": "Whether this exam has been passed and not expired.", + "type": "boolean" + }, + "taken": { + "format": "google-datetime", + "description": "The date the user last taken this exam.", + "type": "string" + }, + "warning": { + "description": "Whether this exam is in the state of warning.", + "type": "boolean" + }, + "expiration": { + "format": "google-datetime", + "description": "Date this exam is due to expire.", + "type": "string" + }, + "lastPassed": { + "type": "string", + "format": "google-datetime", + "description": "The date the user last passed this exam." + } + }, + "id": "ExamStatus" + }, + "ListOffersResponse": { + "description": "Response for ListOffer.", + "type": "object", + "properties": { + "availableOffers": { + "description": "Available Offers to be distributed.", + "items": { + "$ref": "AvailableOffer" + }, + "type": "array" + }, + "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" + } + }, + "id": "ListOffersResponse" + }, + "CountryOfferInfo": { + "description": "Offer info by country.", + "type": "object", + "properties": { + "spendXAmount": { + "description": "(localized) Spend X amount for that country's offer.", + "type": "string" + }, + "offerCountryCode": { + "description": "Country code for which offer codes may be requested.", + "type": "string" + }, + "offerType": { + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." + ], + "enum": [ + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" + ], + "description": "Type of offer country is eligible for.", + "type": "string" + }, + "getYAmount": { + "description": "(localized) Get Y amount for that country's offer.", + "type": "string" + } + }, + "id": "CountryOfferInfo" + }, + "ListCompaniesResponse": { + "id": "ListCompaniesResponse", + "description": "Response message for\nListCompanies.", + "type": "object", + "properties": { + "companies": { + "description": "The list of companies.", + "items": { + "$ref": "Company" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve next page of results.\nPass this value in the `ListCompaniesRequest.page_token` field in the\nsubsequent call to\nListCompanies to retrieve the\nnext page of results.", + "type": "string" + }, + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + } + }, + "OfferCustomer": { + "type": "object", + "properties": { + "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" + }, + "adwordsUrl": { + "description": "URL to the customer's AdWords page.", + "type": "string" + }, + "offerType": { + "enumDescriptions": [ + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." ], "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", - "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" - ] + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" + ], + "description": "Type of the offer", + "type": "string" + }, + "eligibilityDaysLeft": { + "type": "integer", + "format": "int32", + "description": "Days the customer is still eligible." + }, + "creationTime": { + "format": "google-datetime", + "description": "Time the customer was created.", + "type": "string" + }, + "countryCode": { + "description": "Country code of the customer.", + "type": "string" + }, + "externalCid": { + "format": "int64", + "description": "External CID for the customer.", + "type": "string" + } + }, + "id": "OfferCustomer", + "description": "Customers qualified for an offer." + }, + "CertificationStatus": { + "description": "Google Partners certification status.", + "type": "object", + "properties": { + "userCount": { + "format": "int32", + "description": "Number of people who are certified,", + "type": "integer" + }, + "isCertified": { + "type": "boolean", + "description": "Whether certification is passing." + }, + "examStatuses": { + "description": "List of certification exam statuses.", + "items": { + "$ref": "CertificationExamStatus" + }, + "type": "array" + }, + "type": { + "enumDescriptions": [ + "Unchosen.", + "AdWords certified.", + "YouTube certified.", + "VideoAds certified.", + "Analytics certified.", + "DoubleClick certified.", + "Shopping certified.", + "Mobile certified.", + "Digital sales certified.", + "AdWords Search certified.", + "AdWords Display certified.", + "Mobile Sites certified." + ], + "enum": [ + "CERTIFICATION_TYPE_UNSPECIFIED", + "CT_ADWORDS", + "CT_YOUTUBE", + "CT_VIDEOADS", + "CT_ANALYTICS", + "CT_DOUBLECLICK", + "CT_SHOPPING", + "CT_MOBILE", + "CT_DIGITAL_SALES", + "CT_ADWORDS_SEARCH", + "CT_ADWORDS_DISPLAY", + "CT_MOBILE_SITES" + ], + "description": "The type of the certification.", + "type": "string" + } + }, + "id": "CertificationStatus" + }, + "LocalizedCompanyInfo": { + "description": "The localized company information.", + "type": "object", + "properties": { + "countryCodes": { + "description": "List of country codes for the localized company info.", + "items": { + "type": "string" + }, + "type": "array" }, - "url": { - "description": "The URL where the event occurred.", + "overview": { + "description": "Localized brief description that the company uses to advertise themselves.", "type": "string" }, - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Current request metadata." + "displayName": { + "description": "Localized display name.", + "type": "string" }, - "eventScope": { - "enumDescriptions": [ - "Unchosen.", - "Based on visitor.", - "Based on session.", - "Based on page visit." - ], - "enum": [ - "EVENT_SCOPE_UNSPECIFIED", - "VISITOR", - "SESSION", - "PAGE" - ], - "description": "The scope of the event.", + "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" + } + }, + "id": "LocalizedCompanyInfo" + }, + "LogUserEventResponse": { + "properties": { + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + } + }, + "id": "LogUserEventResponse", + "description": "Response message for\nLogUserEvent.", + "type": "object" + }, + "ListOffersHistoryResponse": { + "description": "Response for ListOfferHistory.", + "type": "object", + "properties": { + "canShowEntireCompany": { + "description": "True if the user has the option to show entire company history.", + "type": "boolean" }, - "eventDatas": { - "description": "List of event data for the event.", + "totalResults": { + "format": "int32", + "description": "Number of results across all pages.", + "type": "integer" + }, + "showingEntireCompany": { + "description": "True if this response is showing entire company history.", + "type": "boolean" + }, + "offers": { + "description": "Historical offers meeting request.", "items": { - "$ref": "EventData" + "$ref": "HistoricalOffer" }, "type": "array" }, - "eventCategory": { + "nextPageToken": { + "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", + "type": "string" + }, + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + } + }, + "id": "ListOffersHistoryResponse" + }, + "LogMessageResponse": { + "description": "Response message for\nLogClientMessage.", + "type": "object", + "properties": { + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + } + }, + "id": "LogMessageResponse" + }, + "SpecializationStatus": { + "description": "Agency specialization status", + "type": "object", + "properties": { + "badgeSpecialization": { + "type": "string", + "enumDescriptions": [ + "Unknown specialization", + "AdWords Search specialization", + "AdWords Display specialization", + "AdWords Mobile specialization", + "AdWords Video specialization", + "AdWords Shopping specialization" + ], "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" + "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." + }, + "badgeSpecializationState": { + "enum": [ + "BADGE_SPECIALIZATION_STATE_UNKNOWN", + "BADGE_SPECIALIZATION_STATE_PASSED", + "BADGE_SPECIALIZATION_STATE_NOT_PASSED", + "BADGE_SPECIALIZATION_STATE_IN_GRACE" ], - "description": "The category the action belongs to.", + "description": "State of agency specialization.", "type": "string", "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." + "Unknown state", + "Specialization passed", + "Specialization not passed", + "Specialization in grace" ] - }, - "lead": { - "$ref": "Lead", - "description": "Advertiser lead information." } }, - "id": "LogUserEventRequest" + "id": "SpecializationStatus" }, - "AnalyticsDataPoint": { - "id": "AnalyticsDataPoint", - "description": "Details of the analytics events for a `Company` within a single day.", + "Certification": { + "id": "Certification", + "description": "A user's information on a specific certification.", "type": "object", "properties": { - "eventLocations": { - "description": "Location information of where these events occurred.", - "items": { - "$ref": "LatLng" - }, - "type": "array" + "certificationType": { + "description": "The type of certification, the area of expertise.", + "type": "string", + "enumDescriptions": [ + "Unchosen.", + "AdWords certified.", + "YouTube certified.", + "VideoAds certified.", + "Analytics certified.", + "DoubleClick certified.", + "Shopping certified.", + "Mobile certified.", + "Digital sales certified.", + "AdWords Search certified.", + "AdWords Display certified.", + "Mobile Sites certified." + ], + "enum": [ + "CERTIFICATION_TYPE_UNSPECIFIED", + "CT_ADWORDS", + "CT_YOUTUBE", + "CT_VIDEOADS", + "CT_ANALYTICS", + "CT_DOUBLECLICK", + "CT_SHOPPING", + "CT_MOBILE", + "CT_DIGITAL_SALES", + "CT_ADWORDS_SEARCH", + "CT_ADWORDS_DISPLAY", + "CT_MOBILE_SITES" + ] }, - "eventCount": { - "format": "int32", - "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).", - "type": "integer" + "lastAchieved": { + "format": "google-datetime", + "description": "The date the user last achieved certification.", + "type": "string" + }, + "warning": { + "description": "Whether this certification is in the state of warning.", + "type": "boolean" + }, + "expiration": { + "format": "google-datetime", + "description": "Date this certification is due to expire.", + "type": "string" + }, + "achieved": { + "description": "Whether this certification has been achieved.", + "type": "boolean" } } } }, + "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": "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/" + "description": "Searches certified companies and creates contact leads with them, and also audits the usage of clients.", + "rootUrl": "https://partners.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "partners", + "batchPath": "batch", + "id": "partners:v2", + "documentationLink": "https://developers.google.com/partners/", + "revision": "20170713", + "title": "Google Partners API", + "ownerName": "Google", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/people_v1.json b/DiscoveryJson/people_v1.json index d3a0ab5ce5..0d12598df8 100644 --- a/DiscoveryJson/people_v1.json +++ b/DiscoveryJson/people_v1.json @@ -1,1964 +1,1964 @@ { - "ownerName": "Google", - "resources": { - "contactGroups": { - "methods": { - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "ContactGroup" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups", - "path": "v1/contactGroups", - "id": "people.contactGroups.create", - "description": "Create a new contact group owned by the authenticated user.", - "request": { - "$ref": "CreateContactGroupRequest" - } - }, - "get": { - "response": { - "$ref": "ContactGroup" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "parameters": { - "maxMembers": { - "format": "int32", - "description": "Specifies the maximum number of members to return.", - "type": "integer", - "location": "query" - }, - "resourceName": { - "description": "The resource name of the contact group to get.", - "type": "string", - "required": true, - "pattern": "^contactGroups/[^/]+$", - "location": "path" - } - }, - "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." + "schemas": { + "Event": { + "description": "An event related to the person.", + "type": "object", + "properties": { + "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" }, - "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": { - "pattern": "^contactGroups/[^/]+$", - "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.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}", - "id": "people.contactGroups.update", - "path": "v1/{+resourceName}" + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the event." }, - "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": { - "resourceNames": { - "description": "The resource names of the contact groups to get.", - "type": "string", - "repeated": true, - "location": "query" - }, - "maxMembers": { - "location": "query", - "format": "int32", - "description": "Specifies the maximum number of members to return for each group.", - "type": "integer" - } - }, - "flatPath": "v1/contactGroups:batchGet", - "id": "people.contactGroups.batchGet", - "path": "v1/contactGroups:batchGet" + "date": { + "description": "The date of the event.", + "$ref": "Date" }, - "delete": { - "flatPath": "v1/contactGroups/{contactGroupsId}", - "id": "people.contactGroups.delete", - "path": "v1/{+resourceName}", - "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.", - "response": { - "$ref": "Empty" + "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": "Event" + }, + "ModifyContactGroupMembersResponse": { + "properties": { + "notFoundResourceNames": { + "description": "The contact people resource names that were not found.", + "items": { + "type": "string" }, - "parameterOrder": [ - "resourceName" + "type": "array" + } + }, + "id": "ModifyContactGroupMembersResponse", + "description": "The response to a modify contact group members request.", + "type": "object" + }, + "ProfileMetadata": { + "description": "The read-only metadata about a profile.", + "type": "object", + "properties": { + "objectType": { + "enumDescriptions": [ + "Unspecified.", + "Person.", + "[Google+ Page.](http://www.google.com/+/brands/)" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/contacts" + "enum": [ + "OBJECT_TYPE_UNSPECIFIED", + "PERSON", + "PAGE" ], - "parameters": { - "resourceName": { - "location": "path", - "description": "The resource name of the contact group to delete.", - "type": "string", - "required": true, - "pattern": "^contactGroups/[^/]+$" - }, - "deleteContacts": { - "description": "Set to true to also delete the contacts in the specified group.", - "type": "boolean", - "location": "query" - } - } + "description": "The profile object type.", + "type": "string" }, - "list": { - "id": "people.contactGroups.list", - "path": "v1/contactGroups", - "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated.", - "response": { - "$ref": "ListContactGroupsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "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" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The maximum number of resources to return.", - "type": "integer" - } + "userTypes": { + "description": "The user types.", + "items": { + "enum": [ + "USER_TYPE_UNKNOWN", + "GOOGLE_USER", + "GPLUS_USER", + "GOOGLE_APPS_USER" + ], + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "flatPath": "v1/contactGroups" + "type": "array", + "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." + ] } }, - "resources": { - "members": { - "methods": { - "modify": { - "response": { - "$ref": "ModifyContactGroupMembersResponse" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "POST", - "parameters": { - "resourceName": { - "pattern": "^contactGroups/[^/]+$", - "location": "path", - "description": "The resource name of the contact group to modify.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify", - "id": "people.contactGroups.members.modify", - "path": "v1/{+resourceName}/members:modify", - "description": "Modify the members of a contact group owned by the authenticated user.", - "request": { - "$ref": "ModifyContactGroupMembersRequest" - } - } - } - } - } + "id": "ProfileMetadata" }, - "people": { - "methods": { - "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": [], - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/user.addresses.read", - "https://www.googleapis.com/auth/user.birthday.read", - "https://www.googleapis.com/auth/user.emails.read", - "https://www.googleapis.com/auth/user.phonenumbers.read", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ], - "parameters": { - "personFields": { - "location": "query", - "format": "google-fieldmask", - "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "type": "string" - }, - "requestMask.includeField": { - "format": "google-fieldmask", - "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`.", - "type": "string", - "location": "query" - }, - "resourceNames": { - "description": "The resource names of the people to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).\n\nYou can include up to 50 resource names in one request.", - "type": "string", - "repeated": true, - "location": "query" - } - }, - "flatPath": "v1/people:batchGet", - "path": "v1/people:batchGet", - "id": "people.people.getBatchGet" + "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" }, - "get": { - "description": "Provides information about a person by specifying a resource name. Use\n`people/me` to indicate the authenticated user.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", - "response": { - "$ref": "Person" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly", - "https://www.googleapis.com/auth/plus.login", - "https://www.googleapis.com/auth/user.addresses.read", - "https://www.googleapis.com/auth/user.birthday.read", - "https://www.googleapis.com/auth/user.emails.read", - "https://www.googleapis.com/auth/user.phonenumbers.read", - "https://www.googleapis.com/auth/userinfo.email", - "https://www.googleapis.com/auth/userinfo.profile" - ], - "parameters": { - "requestMask.includeField": { - "format": "google-fieldmask", - "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`.", - "type": "string", - "location": "query" - }, - "personFields": { - "format": "google-fieldmask", - "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "type": "string", - "location": "query" - }, - "resourceName": { - "location": "path", - "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).", - "type": "string", - "required": true, - "pattern": "^people/[^/]+$" - } - }, - "flatPath": "v1/people/{peopleId}", - "id": "people.people.get", - "path": "v1/{+resourceName}" + "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" }, - "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" - }, - "parameters": { - "updatePersonFields": { - "location": "query", - "format": "google-fieldmask", - "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls", - "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.", - "type": "string", - "required": true, - "pattern": "^people/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/people/{peopleId}:updateContact", - "path": "v1/{+resourceName}:updateContact", - "id": "people.people.updateContact" + "metadata": { + "description": "Metadata about the gender.", + "$ref": "FieldMetadata" + } + }, + "id": "Gender", + "description": "A person's gender.", + "type": "object" + }, + "CoverPhoto": { + "description": "A person's read-only cover photo. A large image shown on the person's\nprofile page that represents who they are or what they care about.", + "type": "object", + "properties": { + "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" }, - "createContact": { - "description": "Create a new contact and return the person resource for that contact.", - "request": { - "$ref": "Person" - }, - "response": { - "$ref": "Person" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The resource name of the owning person resource.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/people:createContact", - "id": "people.people.createContact", - "path": "v1/people:createContact" + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the cover photo." }, - "deleteContact": { - "flatPath": "v1/people/{peopleId}:deleteContact", - "id": "people.people.deleteContact", - "path": "v1/{+resourceName}: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": { - "pattern": "^people/[^/]+$", - "location": "path", - "description": "The resource name of the contact to delete.", - "type": "string", - "required": true - } - } + "url": { + "description": "The URL of the cover photo.", + "type": "string" } }, - "resources": { - "connections": { - "methods": { - "list": { - "path": "v1/{+resourceName}/connections", - "id": "people.people.connections.list", - "description": "Provides a list of the authenticated user's contacts merged with any\nconnected profiles.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.", - "httpMethod": "GET", - "response": { - "$ref": "ListConnectionsResponse" - }, - "parameterOrder": [ - "resourceName" - ], - "parameters": { - "requestSyncToken": { - "location": "query", - "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request.", - "type": "boolean" - }, - "pageToken": { - "location": "query", - "description": "The token of the page to be returned.", - "type": "string" - }, - "resourceName": { - "pattern": "^people/[^/]+$", - "location": "path", - "description": "The resource name to return connections for. Only `people/me` is valid.", - "type": "string", - "required": true - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.", - "type": "integer" - }, - "requestMask.includeField": { - "format": "google-fieldmask", - "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`.", - "type": "string", - "location": "query" - }, - "syncToken": { - "description": "A sync token, returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.", - "type": "string", - "location": "query" - }, - "personFields": { - "format": "google-fieldmask", - "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", - "type": "string", - "location": "query" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], - "flatPath": "v1/people/{peopleId}/connections" - } - } - } - } - } - }, - "parameters": { - "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": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" - }, - "key": { - "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.", - "default": "true", - "type": "boolean", - "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" + "id": "CoverPhoto" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" - } - }, - "version": "v1", - "baseUrl": "https://people.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Provides access to information about profiles and contacts.", - "basePath": "", - "revision": "20170715", - "documentationLink": "https://developers.google.com/people/", - "id": "people:v1", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "Residence": { + "Interest": { + "description": "One of the person's interests.", + "type": "object", "properties": { - "current": { - "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", - "type": "boolean" + "value": { + "description": "The interest; for example, `stargazing`.", + "type": "string" + }, + "metadata": { + "description": "Metadata about the interest.", + "$ref": "FieldMetadata" + } + }, + "id": "Interest" + }, + "EmailAddress": { + "description": "A person's email address.", + "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.", + "type": "string" + }, + "displayName": { + "description": "The display name of the email.", + "type": "string" + }, + "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`", + "type": "string" }, "metadata": { - "description": "Metadata about the residence.", + "description": "Metadata about the email address.", "$ref": "FieldMetadata" }, "value": { - "description": "The address of the residence.", + "description": "The email address.", "type": "string" } }, - "id": "Residence", - "description": "A person's past or current residence.", - "type": "object" + "id": "EmailAddress" }, - "Event": { + "Nickname": { + "description": "A person's nickname.", + "type": "object", "properties": { - "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`", + "value": { + "description": "The nickname.", "type": "string" }, + "type": { + "enum": [ + "DEFAULT", + "MAIDEN_NAME", + "INITIALS", + "GPLUS", + "OTHER_NAME" + ], + "description": "The type of the nickname.", + "type": "string", + "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.`" + ] + }, "metadata": { - "description": "Metadata about the event.", + "description": "Metadata about the nickname.", "$ref": "FieldMetadata" + } + }, + "id": "Nickname" + }, + "Skill": { + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the skill." }, - "date": { - "description": "The date of the event.", - "$ref": "Date" - }, - "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.", + "value": { + "description": "The skill; for example, `underwater basket weaving`.", "type": "string" } }, - "id": "Event", - "description": "An event related to the person.", + "id": "Skill", + "description": "A skill that the person has.", "type": "object" }, - "ModifyContactGroupMembersResponse": { - "description": "The response to a modify contact group members request.", + "Tagline": { + "description": "A read-only brief one-line description of the person.", "type": "object", "properties": { - "notFoundResourceNames": { - "description": "The contact people resource names that were not found.", - "items": { - "type": "string" - }, - "type": "array" + "metadata": { + "description": "Metadata about the tagline.", + "$ref": "FieldMetadata" + }, + "value": { + "description": "The tagline.", + "type": "string" } }, - "id": "ModifyContactGroupMembersResponse" + "id": "Tagline" }, - "ProfileMetadata": { - "description": "The read-only metadata about a profile.", + "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": { - "objectType": { - "enumDescriptions": [ - "Unspecified.", - "Person.", - "[Google+ Page.](http://www.google.com/+/brands/)" - ], - "enum": [ - "OBJECT_TYPE_UNSPECIFIED", - "PERSON", - "PAGE" - ], - "description": "The profile object type.", + "day": { + "format": "int32", + "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.", + "type": "integer" + }, + "year": { + "format": "int32", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "type": "integer" + }, + "month": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" + } + }, + "id": "Date" + }, + "Name": { + "properties": { + "honorificPrefix": { + "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", "type": "string" }, - "userTypes": { - "description": "The user types.", - "items": { - "enum": [ - "USER_TYPE_UNKNOWN", - "GOOGLE_USER", - "GPLUS_USER", - "GOOGLE_APPS_USER" - ], - "type": "string" - }, - "type": "array", - "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." - ] + "phoneticHonorificSuffix": { + "description": "The honorific suffixes spelled as they sound.", + "type": "string" + }, + "givenName": { + "description": "The given name.", + "type": "string" + }, + "middleName": { + "description": "The middle name(s).", + "type": "string" + }, + "phoneticHonorificPrefix": { + "description": "The honorific prefixes spelled as they sound.", + "type": "string" + }, + "phoneticGivenName": { + "description": "The given name spelled as it sounds.", + "type": "string" + }, + "phoneticFamilyName": { + "description": "The family name spelled as it sounds.", + "type": "string" + }, + "familyName": { + "description": "The family name.", + "type": "string" + }, + "phoneticMiddleName": { + "description": "The middle name(s) spelled as they sound.", + "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the name." + }, + "phoneticFullName": { + "description": "The full name spelled as it sounds.", + "type": "string" + }, + "displayNameLastFirst": { + "description": "The read-only display name with the last name first formatted according to\nthe locale specified by the viewer's account or the\n`Accept-Language` HTTP header.", + "type": "string" + }, + "displayName": { + "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.", + "type": "string" + }, + "honorificSuffix": { + "description": "The honorific suffixes, such as `Jr.`", + "type": "string" } }, - "id": "ProfileMetadata" + "id": "Name", + "description": "A person's name. If the name is a mononym, the family name is empty.", + "type": "object" }, - "Gender": { - "description": "A person's gender.", + "Locale": { + "description": "A person's locale preference.", "type": "object", "properties": { "metadata": { "$ref": "FieldMetadata", - "description": "Metadata about the gender." + "description": "Metadata about the locale." }, "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`", + "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", "type": "string" + } + }, + "id": "Locale" + }, + "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" + }, + "Biography": { + "description": "A person's short biography.", + "type": "object", + "properties": { + "contentType": { + "enum": [ + "CONTENT_TYPE_UNSPECIFIED", + "TEXT_PLAIN", + "TEXT_HTML" + ], + "description": "The content type of the biography.", + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "Plain text.", + "HTML text." + ] }, - "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.", + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the biography." + }, + "value": { + "description": "The short biography.", "type": "string" } }, - "id": "Gender" + "id": "Biography" }, - "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.", + "FieldMetadata": { + "description": "Metadata about a field.", "type": "object", "properties": { - "url": { - "description": "The URL of the cover photo.", - "type": "string" + "source": { + "description": "The source of the field.", + "$ref": "Source" }, - "default": { - "description": "True if the cover photo is the default cover photo;\nfalse if the cover photo is a user-provided cover photo.", + "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" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the cover photo." + "primary": { + "description": "True if the field is the primary field; false if the field is a secondary\nfield.", + "type": "boolean" } }, - "id": "CoverPhoto" + "id": "FieldMetadata" }, - "Interest": { - "description": "One of the person's interests.", + "RelationshipInterest": { + "description": "A person's read-only relationship interest .", "type": "object", "properties": { - "metadata": { - "description": "Metadata about the interest.", - "$ref": "FieldMetadata" - }, "value": { - "description": "The interest; for example, `stargazing`.", + "description": "The kind of relationship the person is looking for. The value can be custom\nor predefined. Possible values include, but are not limited to, the\nfollowing values:\n\n* `friend`\n* `date`\n* `relationship`\n* `networking`", + "type": "string" + }, + "formattedValue": { + "description": "The value of the relationship interest translated and formatted in the\nviewer's account locale or the locale specified in the Accept-Language\nHTTP header.", "type": "string" + }, + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the relationship interest." } }, - "id": "Interest" + "id": "RelationshipInterest" }, - "Nickname": { - "description": "A person's nickname.", - "type": "object", + "Source": { "properties": { "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.`" + "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": [ - "DEFAULT", - "MAIDEN_NAME", - "INITIALS", - "GPLUS", - "OTHER_NAME" + "SOURCE_TYPE_UNSPECIFIED", + "ACCOUNT", + "PROFILE", + "DOMAIN_PROFILE", + "CONTACT" ], - "description": "The type of the nickname.", + "description": "The source type.", + "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.", + "type": "string" + }, + "id": { + "description": "The unique identifier within the source type generated by the server.", "type": "string" }, + "profileMetadata": { + "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE.", + "$ref": "ProfileMetadata" + }, + "updateTime": { + "format": "google-datetime", + "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", + "type": "string" + } + }, + "id": "Source", + "description": "The source of a field.", + "type": "object" + }, + "GetPeopleResponse": { + "type": "object", + "properties": { + "responses": { + "description": "The response for each requested resource name.", + "items": { + "$ref": "PersonResponse" + }, + "type": "array" + } + }, + "id": "GetPeopleResponse" + }, + "Photo": { + "properties": { "metadata": { - "description": "Metadata about the nickname.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the photo." }, - "value": { - "description": "The nickname.", + "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": "Nickname" + "id": "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" }, - "EmailAddress": { - "description": "A person's email address.", + "PhoneNumber": { + "description": "A person's phone number.", "type": "object", "properties": { + "value": { + "description": "The phone number.", + "type": "string" + }, "formattedType": { - "description": "The read-only type of the email address translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "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" }, - "displayName": { - "description": "The display name of the email.", + "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" }, "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 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" }, "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the email address." - }, - "value": { - "description": "The email address.", - "type": "string" + "description": "Metadata about the phone number.", + "$ref": "FieldMetadata" } }, - "id": "EmailAddress" + "id": "PhoneNumber" }, - "Skill": { - "description": "A skill that the person has.", - "type": "object", + "ListConnectionsResponse": { "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the skill." + "nextPageToken": { + "description": "The token that can be used to retrieve the next page of results.", + "type": "string" }, - "value": { - "description": "The skill; for example, `underwater basket weaving`.", + "totalItems": { + "format": "int32", + "description": "The total number of items in the list without pagination.", + "type": "integer" + }, + "nextSyncToken": { + "description": "The token that can be used to retrieve changes since the last request.", "type": "string" + }, + "connections": { + "description": "The list of people that the requestor is connected to.", + "items": { + "$ref": "Person" + }, + "type": "array" + }, + "totalPeople": { + "format": "int32", + "description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.", + "type": "integer" } }, - "id": "Skill" + "id": "ListConnectionsResponse", + "type": "object" }, - "Tagline": { - "description": "A read-only brief one-line description of the person.", + "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": { + "text": { + "description": "A free-form string representing the user's birthday.", + "type": "string" + }, "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the tagline." + "description": "Metadata about the birthday.", + "$ref": "FieldMetadata" }, - "value": { - "description": "The tagline.", - "type": "string" + "date": { + "description": "The date of the birthday.", + "$ref": "Date" } }, - "id": "Tagline" + "id": "Birthday" }, - "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", + "CreateContactGroupRequest": { "properties": { - "day": { - "format": "int32", - "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.", - "type": "integer" - }, - "year": { - "format": "int32", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "type": "integer" - }, - "month": { - "format": "int32", - "description": "Month of year. Must be from 1 to 12.", - "type": "integer" + "contactGroup": { + "$ref": "ContactGroup", + "description": "The contact group to create." } }, - "id": "Date" + "id": "CreateContactGroupRequest", + "description": "A request to create a new contact group.", + "type": "object" }, - "Name": { - "description": "A person's name. If the name is a mononym, the family name is empty.", - "type": "object", + "Address": { "properties": { - "phoneticHonorificPrefix": { - "description": "The honorific prefixes spelled as they sound.", + "countryCode": { + "description": "The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country\ncode of the address.", "type": "string" }, - "phoneticGivenName": { - "description": "The given name spelled as it sounds.", + "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" }, - "phoneticFamilyName": { - "description": "The family name spelled as it sounds.", + "city": { + "description": "The city of the address.", "type": "string" }, - "familyName": { - "description": "The family name.", + "formattedValue": { + "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.", "type": "string" }, - "metadata": { - "description": "Metadata about the name.", - "$ref": "FieldMetadata" + "country": { + "description": "The country of the address.", + "type": "string" }, - "phoneticMiddleName": { - "description": "The middle name(s) spelled as they sound.", + "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" }, - "phoneticFullName": { - "description": "The full name spelled as it sounds.", + "extendedAddress": { + "description": "The extended address of the address; for example, the apartment number.", "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.", + "poBox": { + "description": "The P.O. box of the address.", "type": "string" }, - "displayName": { - "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.", + "postalCode": { + "description": "The postal code of the address.", "type": "string" }, - "honorificSuffix": { - "description": "The honorific suffixes, such as `Jr.`", + "region": { + "description": "The region of the address; for example, the state or province.", "type": "string" }, - "honorificPrefix": { - "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", + "streetAddress": { + "description": "The street address.", "type": "string" }, - "phoneticHonorificSuffix": { - "description": "The honorific suffixes spelled as they sound.", + "metadata": { + "description": "Metadata about the address.", + "$ref": "FieldMetadata" + } + }, + "id": "Address", + "description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.", + "type": "object" + }, + "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" }, - "middleName": { - "description": "The middle name(s).", - "type": "string" + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + }, + "type": "array" }, - "givenName": { - "description": "The given name.", - "type": "string" + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } }, - "id": "Name" + "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" }, - "Locale": { - "description": "A person's locale preference.", + "ContactGroupMembership": { + "description": "A Google contact group membership.", "type": "object", "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the locale." - }, - "value": { - "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", + "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": "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": "ContactGroupMembership" }, - "Biography": { - "description": "A person's short biography.", + "PersonMetadata": { + "description": "The read-only metadata about a person.", "type": "object", "properties": { - "metadata": { - "description": "Metadata about the biography.", - "$ref": "FieldMetadata" + "linkedPeopleResourceNames": { + "description": "Resource names of people linked to this resource.", + "items": { + "type": "string" + }, + "type": "array" }, - "value": { - "description": "The short biography.", - "type": "string" + "previousResourceNames": { + "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.", + "items": { + "type": "string" + }, + "type": "array" }, - "contentType": { + "sources": { + "description": "The sources of data for the person.", + "items": { + "$ref": "Source" + }, + "type": "array" + }, + "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": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.", + "type": "string", "enumDescriptions": [ "Unspecified.", - "Plain text.", - "HTML text." + "Person.", + "[Google+ Page.](http://www.google.com/+/brands/)" ], "enum": [ - "CONTENT_TYPE_UNSPECIFIED", - "TEXT_PLAIN", - "TEXT_HTML" - ], - "description": "The content type of the biography.", - "type": "string" + "OBJECT_TYPE_UNSPECIFIED", + "PERSON", + "PAGE" + ] } }, - "id": "Biography" + "id": "PersonMetadata" }, - "FieldMetadata": { + "ModifyContactGroupMembersRequest": { "properties": { - "source": { - "$ref": "Source", - "description": "The source of the field." - }, - "verified": { - "description": "True if the field is verified; false if the field is unverified. A\nverified field is typically a name, email address, phone number, or\nwebsite that has been confirmed to be owned by the person.", - "type": "boolean" + "resourceNamesToAdd": { + "description": "The resource names of the contact people to add in the form of in the form\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "items": { + "type": "string" + }, + "type": "array" }, - "primary": { - "description": "True if the field is the primary field; false if the field is a secondary\nfield.", - "type": "boolean" + "resourceNamesToRemove": { + "description": "The resource names of the contact people to remove in the form of in the\nform of `people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "FieldMetadata", - "description": "Metadata about a field.", + "id": "ModifyContactGroupMembersRequest", + "description": "A request to modify an existing contact group's members.", "type": "object" }, - "Source": { + "ContactGroupResponse": { + "description": "The response for a specific contact group.", + "type": "object", "properties": { - "profileMetadata": { - "$ref": "ProfileMetadata", - "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE." - }, - "updateTime": { - "format": "google-datetime", - "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", - "type": "string" - }, - "type": { - "enum": [ - "SOURCE_TYPE_UNSPECIFIED", - "ACCOUNT", - "PROFILE", - "DOMAIN_PROFILE", - "CONTACT" - ], - "description": "The source type.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "[Google Account](https://accounts.google.com).", - "[Google profile](https://profiles.google.com). You can view the\nprofile at https://profiles.google.com/\u003cvar\u003eid\u003c/var\u003e where\n\u003cvar\u003eid\u003c/var\u003e is the source id.", - "[Google Apps domain profile](https://admin.google.com).", - "[Google contact](https://contacts.google.com). You can view the\ncontact at https://contact.google.com/\u003cvar\u003eid\u003c/var\u003e where \u003cvar\u003eid\u003c/var\u003e\nis the source id." - ] + "status": { + "$ref": "Status", + "description": "The status of the response." }, - "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.", + "requestedResourceName": { + "description": "The original requested resource name.", "type": "string" }, - "id": { - "description": "The unique identifier within the source type generated by the server.", - "type": "string" + "contactGroup": { + "$ref": "ContactGroup", + "description": "The contact group." } }, - "id": "Source", - "description": "The source of a field.", - "type": "object" + "id": "ContactGroupResponse" }, - "RelationshipInterest": { - "description": "A person's read-only relationship interest .", + "Url": { + "description": "A person's associated URLs.", "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.", + "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" + }, + "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" }, "metadata": { - "description": "Metadata about the relationship interest.", + "description": "Metadata about the URL.", "$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 URL.", "type": "string" } }, - "id": "RelationshipInterest" - }, - "GetPeopleResponse": { - "properties": { - "responses": { - "description": "The response for each requested resource name.", - "items": { - "$ref": "PersonResponse" - }, - "type": "array" - } - }, - "id": "GetPeopleResponse", - "type": "object" + "id": "Url" }, - "PhoneNumber": { + "ImClient": { "properties": { - "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`", + "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 phone number.", + "description": "Metadata about the IM client.", "$ref": "FieldMetadata" }, - "value": { - "description": "The phone number.", + "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" }, - "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.", + "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" }, - "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.", + "username": { + "description": "The user name used in the IM client.", "type": "string" } }, - "id": "PhoneNumber", - "description": "A person's phone number.", + "id": "ImClient", + "description": "A person's instant messaging client.", "type": "object" }, - "Photo": { - "description": "A person's read-only photo. A picture shown next to the person's name to\nhelp others recognize the person.", + "DomainMembership": { + "description": "A Google Apps Domain membership.", "type": "object", "properties": { - "url": { - "description": "The URL of the photo. You can change the desired size by appending a query\nparameter `sz=`\u003cvar\u003esize\u003c/var\u003e at the end of the url. Example:\n`https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`", - "type": "string" - }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the photo." + "inViewerDomain": { + "description": "True if the person is in the viewer's Google Apps domain.", + "type": "boolean" } }, - "id": "Photo" + "id": "DomainMembership" }, - "ListConnectionsResponse": { + "Membership": { + "description": "A person's read-only membership in a group.", "type": "object", "properties": { - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" - }, - "totalItems": { - "format": "int32", - "description": "The total number of items in the list without pagination.", - "type": "integer" + "domainMembership": { + "description": "The domain membership.", + "$ref": "DomainMembership" }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", - "type": "string" + "contactGroupMembership": { + "$ref": "ContactGroupMembership", + "description": "The contact group membership." }, - "connections": { - "description": "The list of people that the requestor is connected to.", + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the membership." + } + }, + "id": "Membership" + }, + "BatchGetContactGroupsResponse": { + "description": "The response to a batch get contact groups request.", + "type": "object", + "properties": { + "responses": { + "description": "The list of responses for each requested contact group resource.", "items": { - "$ref": "Person" + "$ref": "ContactGroupResponse" }, "type": "array" - }, - "totalPeople": { - "format": "int32", - "description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.", - "type": "integer" } }, - "id": "ListConnectionsResponse" + "id": "BatchGetContactGroupsResponse" }, - "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.", + "RelationshipStatus": { + "description": "A person's read-only relationship status.", "type": "object", "properties": { - "date": { - "description": "The date of the birthday.", - "$ref": "Date" + "value": { + "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`", + "type": "string" }, - "text": { - "description": "A free-form string representing the user's birthday.", + "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 birthday." + "description": "Metadata about the relationship status." } }, - "id": "Birthday" + "id": "RelationshipStatus" }, - "CreateContactGroupRequest": { + "BraggingRights": { + "description": "A person's bragging rights.", + "type": "object", "properties": { - "contactGroup": { - "description": "The contact group to create.", - "$ref": "ContactGroup" + "metadata": { + "description": "Metadata about the bragging rights.", + "$ref": "FieldMetadata" + }, + "value": { + "description": "The bragging rights; for example, `climbed mount everest`.", + "type": "string" } }, - "id": "CreateContactGroupRequest", - "description": "A request to create a new contact group.", - "type": "object" + "id": "BraggingRights" }, - "Address": { + "Organization": { + "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", + "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.", + "location": { + "description": "The location of the organization office the person works at.", "type": "string" }, - "streetAddress": { - "description": "The street address.", + "title": { + "description": "The person's job title at the organization.", "type": "string" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the address." + "current": { + "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", + "type": "boolean" }, - "countryCode": { - "description": "The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country\ncode of the address.", - "type": "string" + "startDate": { + "description": "The start date when the person joined the organization.", + "$ref": "Date" }, "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.", + "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" }, - "city": { - "description": "The city of the address.", + "domain": { + "description": "The domain name associated with the organization; for example, `google.com`.", "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.", + "department": { + "description": "The person's department at the organization.", "type": "string" }, - "country": { - "description": "The country of the address.", + "type": { + "description": "The type of the organization. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `work`\n* `school`", "type": "string" }, - "type": { - "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`", + "phoneticName": { + "description": "The phonetic name of the organization.", "type": "string" }, - "extendedAddress": { - "description": "The extended address of the address; for example, the apartment number.", + "jobDescription": { + "description": "The person's job description at the organization.", "type": "string" - } - }, - "id": "Address", - "description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.", - "type": "object" - }, - "Status": { - "properties": { - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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.", + "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" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - } - }, - "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" - }, - "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.", + "name": { + "description": "The name of the organization.", "type": "string" + }, + "metadata": { + "description": "Metadata about the organization.", + "$ref": "FieldMetadata" } }, - "id": "ContactGroupMembership" + "id": "Organization" }, - "PersonMetadata": { - "description": "The read-only metadata about a person.", + "AgeRangeType": { + "description": "A person's age range.", "type": "object", "properties": { - "objectType": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the age range." + }, + "ageRange": { "enumDescriptions": [ "Unspecified.", - "Person.", - "[Google+ Page.](http://www.google.com/+/brands/)" + "Younger than eighteen.", + "Between eighteen and twenty.", + "Twenty-one and older." ], "enum": [ - "OBJECT_TYPE_UNSPECIFIED", - "PERSON", - "PAGE" + "AGE_RANGE_UNSPECIFIED", + "LESS_THAN_EIGHTEEN", + "EIGHTEEN_TO_TWENTY", + "TWENTY_ONE_OR_OLDER" ], - "description": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.", + "description": "The age range.", "type": "string" - }, - "linkedPeopleResourceNames": { - "description": "Resource names of people linked to this resource.", - "items": { - "type": "string" - }, - "type": "array" - }, - "previousResourceNames": { - "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sources": { - "description": "The sources of data for the person.", - "items": { - "$ref": "Source" - }, - "type": "array" - }, - "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" } }, - "id": "PersonMetadata" + "id": "AgeRangeType" }, - "ModifyContactGroupMembersRequest": { - "description": "A request to modify an existing contact group's members.", + "ListContactGroupsResponse": { + "description": "The response to a list contact groups request.", "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "resourceNamesToRemove": { - "description": "The resource names of the contact people to remove in the form of in the\nform of `people/`\u003cvar\u003eperson_id\u003c/var\u003e.", + "contactGroups": { + "description": "The list of contact groups. Members of the contact groups are not\npopulated.", "items": { - "type": "string" + "$ref": "ContactGroup" }, "type": "array" - } - }, - "id": "ModifyContactGroupMembersRequest" - }, - "ContactGroupResponse": { - "description": "The response for a specific contact group.", - "type": "object", - "properties": { - "contactGroup": { - "$ref": "ContactGroup", - "description": "The contact group." }, - "status": { - "description": "The status of the response.", - "$ref": "Status" + "nextPageToken": { + "description": "The token that can be used to retrieve the next page of results.", + "type": "string" }, - "requestedResourceName": { - "description": "The original requested resource name.", + "nextSyncToken": { + "description": "The token that can be used to retrieve changes since the last request.", "type": "string" + }, + "totalItems": { + "format": "int32", + "description": "The total number of items in the list without pagination.", + "type": "integer" } }, - "id": "ContactGroupResponse" + "id": "ListContactGroupsResponse" }, - "Url": { + "PersonResponse": { "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" - }, - "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" + "person": { + "$ref": "Person", + "description": "The person." }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the URL." + "status": { + "description": "The status of the response.", + "$ref": "Status" }, - "value": { - "description": "The URL.", + "httpStatusCode": { + "format": "int32", + "description": "**DEPRECATED** (Please use status instead)\n\n[HTTP 1.1 status code]\n(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).", + "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": "Url", - "description": "A person's associated URLs.", + "id": "PersonResponse", + "description": "The response for a single person", "type": "object" }, - "ImClient": { - "description": "A person's instant messaging client.", + "Relation": { + "description": "A person's relation to another person.", "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": { + "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" }, "metadata": { "$ref": "FieldMetadata", - "description": "Metadata about the IM client." - }, - "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" + "description": "Metadata about the relation." }, - "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`", + "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" }, - "username": { - "description": "The user name used in the IM client.", + "person": { + "description": "The name of the other person this relation refers to.", "type": "string" } }, - "id": "ImClient" - }, - "DomainMembership": { - "properties": { - "inViewerDomain": { - "description": "True if the person is in the viewer's Google Apps domain.", - "type": "boolean" - } - }, - "id": "DomainMembership", - "description": "A Google Apps Domain membership.", - "type": "object" + "id": "Relation" }, - "Membership": { - "description": "A person's read-only membership in a group.", + "Occupation": { + "description": "A person's occupation.", "type": "object", "properties": { - "domainMembership": { - "$ref": "DomainMembership", - "description": "The domain membership." - }, - "contactGroupMembership": { - "$ref": "ContactGroupMembership", - "description": "The contact group membership." + "value": { + "description": "The occupation; for example, `carpenter`.", + "type": "string" }, "metadata": { - "description": "Metadata about the membership.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the occupation." } }, - "id": "Membership" + "id": "Occupation" }, - "BatchGetContactGroupsResponse": { - "description": "The response to a batch get contact groups request.", + "ContactGroup": { + "description": "A contact group.", "type": "object", "properties": { - "responses": { - "description": "The list of responses for each requested contact group resource.", + "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).", "items": { - "$ref": "ContactGroupResponse" + "type": "string" }, "type": "array" - } - }, - "id": "BatchGetContactGroupsResponse" - }, - "RelationshipStatus": { - "description": "A person's read-only relationship status.", - "type": "object", - "properties": { - "value": { - "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`", + }, + "metadata": { + "$ref": "ContactGroupMetadata", + "description": "Metadata about the contact group." + }, + "memberCount": { + "format": "int32", + "description": "The total number of contacts in the group irrespective of max members in\nspecified in the request.", + "type": "integer" + }, + "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" }, - "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.", + "etag": { + "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", "type": "string" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the relationship status." - } - }, - "id": "RelationshipStatus" - }, - "BraggingRights": { - "description": "A person's bragging rights.", - "type": "object", - "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the bragging rights." + "groupType": { + "enumDescriptions": [ + "Unspecified.", + "User defined contact group.", + "System defined contact group." + ], + "enum": [ + "GROUP_TYPE_UNSPECIFIED", + "USER_CONTACT_GROUP", + "SYSTEM_CONTACT_GROUP" + ], + "description": "The read-only contact group type.", + "type": "string" }, - "value": { - "description": "The bragging rights; for example, `climbed mount everest`.", + "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" } }, - "id": "BraggingRights" + "id": "ContactGroup" }, - "Organization": { - "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", + "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", "properties": { - "current": { - "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", - "type": "boolean" + "birthdays": { + "description": "The person's birthdays.", + "items": { + "$ref": "Birthday" + }, + "type": "array" }, - "startDate": { - "$ref": "Date", - "description": "The start date when the person joined the organization." + "locales": { + "description": "The person's locale preferences.", + "items": { + "$ref": "Locale" + }, + "type": "array" }, - "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" + "relationshipInterests": { + "description": "The person's read-only relationship interests.", + "items": { + "$ref": "RelationshipInterest" + }, + "type": "array" }, - "domain": { - "description": "The domain name associated with the organization; for example, `google.com`.", - "type": "string" + "urls": { + "description": "The person's associated URLs.", + "items": { + "$ref": "Url" + }, + "type": "array" }, - "department": { - "description": "The person's department at the organization.", - "type": "string" + "nicknames": { + "description": "The person's nicknames.", + "items": { + "$ref": "Nickname" + }, + "type": "array" }, - "phoneticName": { - "description": "The phonetic name of the organization.", - "type": "string" + "names": { + "description": "The person's names.", + "items": { + "$ref": "Name" + }, + "type": "array" }, - "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" + "relations": { + "description": "The person's relations.", + "items": { + "$ref": "Relation" + }, + "type": "array" }, - "jobDescription": { - "description": "The person's job description at the organization.", - "type": "string" + "occupations": { + "description": "The person's occupations.", + "items": { + "$ref": "Occupation" + }, + "type": "array" }, - "endDate": { - "$ref": "Date", - "description": "The end date when the person left the organization." + "emailAddresses": { + "description": "The person's email addresses.", + "items": { + "$ref": "EmailAddress" + }, + "type": "array" }, - "symbol": { - "description": "The symbol associated with the organization; for example, a stock ticker\nsymbol, abbreviation, or acronym.", + "organizations": { + "description": "The person's past or current organizations.", + "items": { + "$ref": "Organization" + }, + "type": "array" + }, + "etag": { + "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", "type": "string" }, - "name": { - "description": "The name of the organization.", + "braggingRights": { + "description": "The person's bragging rights.", + "items": { + "$ref": "BraggingRights" + }, + "type": "array" + }, + "metadata": { + "$ref": "PersonMetadata", + "description": "Read-only metadata about the person." + }, + "residences": { + "description": "The person's residences.", + "items": { + "$ref": "Residence" + }, + "type": "array" + }, + "genders": { + "description": "The person's genders.", + "items": { + "$ref": "Gender" + }, + "type": "array" + }, + "resourceName": { + "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", "type": "string" }, - "metadata": { - "description": "Metadata about the organization.", - "$ref": "FieldMetadata" + "interests": { + "description": "The person's interests.", + "items": { + "$ref": "Interest" + }, + "type": "array" }, - "title": { - "description": "The person's job title at the organization.", - "type": "string" + "biographies": { + "description": "The person's biographies.", + "items": { + "$ref": "Biography" + }, + "type": "array" + }, + "skills": { + "description": "The person's skills.", + "items": { + "$ref": "Skill" + }, + "type": "array" + }, + "relationshipStatuses": { + "description": "The person's read-only relationship statuses.", + "items": { + "$ref": "RelationshipStatus" + }, + "type": "array" + }, + "photos": { + "description": "The person's read-only photos.", + "items": { + "$ref": "Photo" + }, + "type": "array" }, - "location": { - "description": "The location of the organization office the person works at.", - "type": "string" - } - }, - "id": "Organization" - }, - "AgeRangeType": { - "properties": { "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", - "enumDescriptions": [ - "Unspecified.", - "Younger than eighteen.", - "Between eighteen and twenty.", - "Twenty-one and older." - ] + "description": "**DEPRECATED** (Please use `person.ageRanges` instead)**\n\nThe person's read-only age range.", + "type": "string" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the age range." - } - }, - "id": "AgeRangeType", - "description": "A person's age range.", - "type": "object" - }, - "ListContactGroupsResponse": { - "properties": { - "contactGroups": { - "description": "The list of contact groups. Members of the contact groups are not\npopulated.", + "taglines": { + "description": "The person's read-only taglines.", "items": { - "$ref": "ContactGroup" + "$ref": "Tagline" }, "type": "array" }, - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" + "ageRanges": { + "description": "The person's read-only age ranges.", + "items": { + "$ref": "AgeRangeType" + }, + "type": "array" }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", - "type": "string" + "addresses": { + "description": "The person's street addresses.", + "items": { + "$ref": "Address" + }, + "type": "array" }, - "totalItems": { - "format": "int32", - "description": "The total number of items in the list without pagination.", - "type": "integer" + "events": { + "description": "The person's events.", + "items": { + "$ref": "Event" + }, + "type": "array" + }, + "memberships": { + "description": "The person's read-only group memberships.", + "items": { + "$ref": "Membership" + }, + "type": "array" + }, + "phoneNumbers": { + "description": "The person's phone numbers.", + "items": { + "$ref": "PhoneNumber" + }, + "type": "array" + }, + "coverPhotos": { + "description": "The person's read-only cover photos.", + "items": { + "$ref": "CoverPhoto" + }, + "type": "array" + }, + "imClients": { + "description": "The person's instant messaging clients.", + "items": { + "$ref": "ImClient" + }, + "type": "array" } }, - "id": "ListContactGroupsResponse", - "description": "The response to a list contact groups request.", - "type": "object" + "id": "Person" }, - "PersonResponse": { - "description": "The response for a single person", + "UpdateContactGroupRequest": { + "description": "A request to update an existing contact group. Only the name can be updated.", "type": "object", "properties": { - "person": { - "description": "The person.", - "$ref": "Person" - }, - "status": { - "$ref": "Status", - "description": "The status of the response." - }, - "httpStatusCode": { - "format": "int32", - "description": "**DEPRECATED** (Please use status instead)\n\n[HTTP 1.1 status code]\n(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).", - "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" + "contactGroup": { + "description": "The contact group to update.", + "$ref": "ContactGroup" } }, - "id": "PersonResponse" + "id": "UpdateContactGroupRequest" }, - "Relation": { - "description": "A person's relation to another person.", + "ContactGroupMetadata": { + "description": "The read-only metadata about a contact group.", "type": "object", "properties": { - "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" - }, - "metadata": { - "description": "Metadata about the relation.", - "$ref": "FieldMetadata" - }, - "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.", + "updateTime": { + "format": "google-datetime", + "description": "The time the group was last updated.", "type": "string" }, - "person": { - "description": "The name of the other person this relation refers to.", - "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": "Relation" + "id": "ContactGroupMetadata" }, - "Occupation": { - "description": "A person's occupation.", + "Residence": { + "description": "A person's past or current residence.", "type": "object", "properties": { "value": { - "description": "The occupation; for example, `carpenter`.", + "description": "The address of the residence.", "type": "string" }, + "current": { + "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", + "type": "boolean" + }, "metadata": { - "description": "Metadata about the occupation.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the residence." } }, - "id": "Occupation" - }, - "ContactGroup": { - "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" - }, - "etag": { - "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", - "type": "string" - }, - "formattedName": { - "description": "The read-only name translated and formatted in the viewer's account locale\nor the `Accept-Language` HTTP header locale for system groups names.\nGroup names set by the owner are the same as name.", - "type": "string" + "id": "Residence" + } + }, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "protocol": "rest", + "canonicalName": "People Service", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/contacts.readonly": { + "description": "View your contacts" }, - "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" - ] + "https://www.googleapis.com/auth/user.birthday.read": { + "description": "View your complete date of birth" }, - "memberResourceNames": { - "description": "The list of contact person resource names that are members of the contact\ngroup. The field is not populated for LIST requests and can only be updated\nthrough the\n[ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/modify).", - "items": { - "type": "string" - }, - "type": "array" + "https://www.googleapis.com/auth/plus.login": { + "description": "Know the list of people in your circles, your age range, and language" }, - "name": { - "description": "The contact group name set by the group owner or a system provided name\nfor system groups.", - "type": "string" + "https://www.googleapis.com/auth/userinfo.profile": { + "description": "View your basic profile info" }, - "memberCount": { - "format": "int32", - "description": "The total number of contacts in the group irrespective of max members in\nspecified in the request.", - "type": "integer" + "https://www.googleapis.com/auth/user.emails.read": { + "description": "View your email addresses" }, - "metadata": { - "$ref": "ContactGroupMetadata", - "description": "Metadata about the contact group." - } - }, - "id": "ContactGroup", - "description": "A contact group.", - "type": "object" - }, - "Person": { - "properties": { - "coverPhotos": { - "description": "The person's read-only cover photos.", - "items": { - "$ref": "CoverPhoto" - }, - "type": "array" + "https://www.googleapis.com/auth/contacts": { + "description": "Manage your contacts" }, - "imClients": { - "description": "The person's instant messaging clients.", - "items": { - "$ref": "ImClient" - }, - "type": "array" + "https://www.googleapis.com/auth/user.addresses.read": { + "description": "View your street addresses" }, - "birthdays": { - "description": "The person's birthdays.", - "items": { - "$ref": "Birthday" - }, - "type": "array" + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" }, - "locales": { - "description": "The person's locale preferences.", - "items": { - "$ref": "Locale" + "https://www.googleapis.com/auth/user.phonenumbers.read": { + "description": "View your phone numbers" + } + } + } + }, + "rootUrl": "https://people.googleapis.com/", + "ownerDomain": "google.com", + "name": "people", + "batchPath": "batch", + "title": "Google People API", + "ownerName": "Google", + "resources": { + "contactGroups": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "resourceName" + ], + "response": { + "$ref": "Empty" }, - "type": "array" - }, - "relationshipInterests": { - "description": "The person's read-only relationship interests.", - "items": { - "$ref": "RelationshipInterest" + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "parameters": { + "resourceName": { + "description": "The resource name of the contact group to delete.", + "type": "string", + "required": true, + "pattern": "^contactGroups/[^/]+$", + "location": "path" + }, + "deleteContacts": { + "description": "Set to true to also delete the contacts in the specified group.", + "type": "boolean", + "location": "query" + } }, - "type": "array" + "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." }, - "urls": { - "description": "The person's associated URLs.", - "items": { - "$ref": "Url" + "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" }, - "type": "array" - }, - "nicknames": { - "description": "The person's nicknames.", - "items": { - "$ref": "Nickname" + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "maxMembers": { + "location": "query", + "format": "int32", + "description": "Specifies the maximum number of members to return for each group.", + "type": "integer" + }, + "resourceNames": { + "description": "The resource names of the contact groups to get.", + "type": "string", + "repeated": true, + "location": "query" + } }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], + "flatPath": "v1/contactGroups:batchGet", + "id": "people.contactGroups.batchGet", + "path": "v1/contactGroups:batchGet" }, - "names": { - "description": "The person's names.", - "items": { - "$ref": "Name" + "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" }, - "type": "array" - }, - "relations": { - "description": "The person's relations.", - "items": { - "$ref": "Relation" + "parameters": { + "syncToken": { + "location": "query", + "description": "A sync token, returned by a previous call to `contactgroups.list`.\nOnly resources changed since the sync token was created will be returned.", + "type": "string" + }, + "pageToken": { + "description": "The next_page_token value returned from a previous call to\n[ListContactGroups](/people/api/rest/v1/contactgroups/list).\nRequests the next page of resources.", + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "The maximum number of resources to return.", + "type": "integer", + "location": "query" + } }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], + "flatPath": "v1/contactGroups", + "path": "v1/contactGroups", + "id": "people.contactGroups.list" }, - "occupations": { - "description": "The person's occupations.", - "items": { - "$ref": "Occupation" + "create": { + "request": { + "$ref": "CreateContactGroupRequest" }, - "type": "array" - }, - "emailAddresses": { - "description": "The person's email addresses.", - "items": { - "$ref": "EmailAddress" + "description": "Create a new contact group owned by the authenticated user.", + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "ContactGroup" }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "parameters": {}, + "flatPath": "v1/contactGroups", + "path": "v1/contactGroups", + "id": "people.contactGroups.create" }, - "organizations": { - "description": "The person's past or current organizations.", - "items": { - "$ref": "Organization" + "get": { + "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.", + "response": { + "$ref": "ContactGroup" }, - "type": "array" - }, - "etag": { - "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", - "type": "string" - }, - "braggingRights": { - "description": "The person's bragging rights.", - "items": { - "$ref": "BraggingRights" + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], + "parameters": { + "maxMembers": { + "format": "int32", + "description": "Specifies the maximum number of members to return.", + "type": "integer", + "location": "query" + }, + "resourceName": { + "description": "The resource name of the contact group to get.", + "type": "string", + "required": true, + "pattern": "^contactGroups/[^/]+$", + "location": "path" + } }, - "type": "array" - }, - "metadata": { - "description": "Read-only metadata about the person.", - "$ref": "PersonMetadata" + "flatPath": "v1/contactGroups/{contactGroupsId}" }, - "residences": { - "description": "The person's residences.", - "items": { - "$ref": "Residence" + "update": { + "httpMethod": "PUT", + "parameterOrder": [ + "resourceName" + ], + "response": { + "$ref": "ContactGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "parameters": { + "resourceName": { + "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.", + "type": "string", + "required": true, + "pattern": "^contactGroups/[^/]+$", + "location": "path" + } }, - "type": "array" - }, - "genders": { - "description": "The person's genders.", - "items": { - "$ref": "Gender" + "flatPath": "v1/contactGroups/{contactGroupsId}", + "path": "v1/{+resourceName}", + "id": "people.contactGroups.update", + "request": { + "$ref": "UpdateContactGroupRequest" }, - "type": "array" - }, - "interests": { - "description": "The person's interests.", - "items": { - "$ref": "Interest" + "description": "Update the name of an existing contact group owned by the authenticated\nuser." + } + }, + "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.", + "type": "string", + "required": true, + "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" + } + } + } + } + }, + "people": { + "methods": { + "deleteContact": { + "flatPath": "v1/people/{peopleId}:deleteContact", + "id": "people.people.deleteContact", + "path": "v1/{+resourceName}:deleteContact", + "description": "Delete a contact person. Any non-contact data will not be deleted.", + "response": { + "$ref": "Empty" }, - "type": "array" - }, - "resourceName": { - "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.", - "type": "string" - }, - "biographies": { - "description": "The person's biographies.", - "items": { - "$ref": "Biography" + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "DELETE", + "parameters": { + "resourceName": { + "location": "path", + "description": "The resource name of the contact to delete.", + "type": "string", + "required": true, + "pattern": "^people/[^/]+$" + } }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ] }, - "skills": { - "description": "The person's skills.", - "items": { - "$ref": "Skill" + "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.", + "response": { + "$ref": "GetPeopleResponse" }, - "type": "array" - }, - "relationshipStatuses": { - "description": "The person's read-only relationship statuses.", - "items": { - "$ref": "RelationshipStatus" + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly", + "https://www.googleapis.com/auth/plus.login", + "https://www.googleapis.com/auth/user.addresses.read", + "https://www.googleapis.com/auth/user.birthday.read", + "https://www.googleapis.com/auth/user.emails.read", + "https://www.googleapis.com/auth/user.phonenumbers.read", + "https://www.googleapis.com/auth/userinfo.email", + "https://www.googleapis.com/auth/userinfo.profile" + ], + "parameters": { + "personFields": { + "format": "google-fieldmask", + "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "type": "string", + "location": "query" + }, + "requestMask.includeField": { + "location": "query", + "format": "google-fieldmask", + "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`.", + "type": "string" + }, + "resourceNames": { + "location": "query", + "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 + } }, - "type": "array" + "flatPath": "v1/people:batchGet", + "id": "people.people.getBatchGet", + "path": "v1/people:batchGet" }, - "photos": { - "description": "The person's read-only photos.", - "items": { - "$ref": "Photo" + "get": { + "flatPath": "v1/people/{peopleId}", + "id": "people.people.get", + "path": "v1/{+resourceName}", + "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" }, - "type": "array" - }, - "ageRange": { - "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." + "parameterOrder": [ + "resourceName" ], - "enum": [ - "AGE_RANGE_UNSPECIFIED", - "LESS_THAN_EIGHTEEN", - "EIGHTEEN_TO_TWENTY", - "TWENTY_ONE_OR_OLDER" - ] - }, - "taglines": { - "description": "The person's read-only taglines.", - "items": { - "$ref": "Tagline" + "httpMethod": "GET", + "parameters": { + "personFields": { + "location": "query", + "format": "google-fieldmask", + "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "type": "string" + }, + "resourceName": { + "pattern": "^people/[^/]+$", + "location": "path", + "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).", + "type": "string", + "required": true + }, + "requestMask.includeField": { + "location": "query", + "format": "google-fieldmask", + "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`.", + "type": "string" + } }, - "type": "array" + "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" + ] }, - "ageRanges": { - "description": "The person's read-only age ranges.", - "items": { - "$ref": "AgeRangeType" + "updateContact": { + "request": { + "$ref": "Person" }, - "type": "array" - }, - "addresses": { - "description": "The person's street addresses.", - "items": { - "$ref": "Address" + "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.", + "response": { + "$ref": "Person" }, - "type": "array" - }, - "events": { - "description": "The person's events.", - "items": { - "$ref": "Event" + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "parameters": { + "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.", + "type": "string", + "required": true, + "pattern": "^people/[^/]+$" + }, + "updatePersonFields": { + "format": "google-fieldmask", + "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls", + "type": "string", + "location": "query" + } }, - "type": "array" + "flatPath": "v1/people/{peopleId}:updateContact", + "id": "people.people.updateContact", + "path": "v1/{+resourceName}:updateContact" }, - "memberships": { - "description": "The person's read-only group memberships.", - "items": { - "$ref": "Membership" + "createContact": { + "request": { + "$ref": "Person" }, - "type": "array" - }, - "phoneNumbers": { - "description": "The person's phone numbers.", - "items": { - "$ref": "PhoneNumber" + "description": "Create a new contact and return the person resource for that contact.", + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Person" }, - "type": "array" - } - }, - "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" - }, - "UpdateContactGroupRequest": { - "description": "A request to update an existing contact group. Only the name can be updated.", - "type": "object", - "properties": { - "contactGroup": { - "description": "The contact group to update.", - "$ref": "ContactGroup" + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "parameters": { + "parent": { + "location": "query", + "description": "The resource name of the owning person resource.", + "type": "string" + } + }, + "flatPath": "v1/people:createContact", + "path": "v1/people:createContact", + "id": "people.people.createContact" } }, - "id": "UpdateContactGroupRequest" - }, - "ContactGroupMetadata": { - "description": "The read-only metadata about a contact group.", - "type": "object", - "properties": { - "updateTime": { - "format": "google-datetime", - "description": "The time the group was last updated.", - "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" + "resources": { + "connections": { + "methods": { + "list": { + "response": { + "$ref": "ListConnectionsResponse" + }, + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "GET", + "parameters": { + "personFields": { + "location": "query", + "format": "google-fieldmask", + "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls", + "type": "string" + }, + "sortOrder": { + "description": "The order in which the connections should be sorted. Defaults to\n`LAST_MODIFIED_ASCENDING`.", + "type": "string", + "location": "query", + "enum": [ + "LAST_MODIFIED_ASCENDING", + "FIRST_NAME_ASCENDING", + "LAST_NAME_ASCENDING" + ] + }, + "requestSyncToken": { + "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request.", + "type": "boolean", + "location": "query" + }, + "resourceName": { + "pattern": "^people/[^/]+$", + "location": "path", + "description": "The resource name to return connections for. Only `people/me` is valid.", + "type": "string", + "required": true + }, + "pageToken": { + "location": "query", + "description": "The token of the page to be returned.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.", + "type": "integer" + }, + "requestMask.includeField": { + "location": "query", + "format": "google-fieldmask", + "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`.", + "type": "string" + }, + "syncToken": { + "description": "A sync token, returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], + "flatPath": "v1/people/{peopleId}/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." + } + } } - }, - "id": "ContactGroupMetadata" + } } }, - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "protocol": "rest", - "canonicalName": "People Service", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/user.emails.read": { - "description": "View your email addresses" - }, - "https://www.googleapis.com/auth/contacts": { - "description": "Manage your contacts" - }, - "https://www.googleapis.com/auth/user.addresses.read": { - "description": "View your street addresses" - }, - "https://www.googleapis.com/auth/user.phonenumbers.read": { - "description": "View your phone numbers" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.googleapis.com/auth/contacts.readonly": { - "description": "View your contacts" - }, - "https://www.googleapis.com/auth/user.birthday.read": { - "description": "View your complete date of birth" - }, - "https://www.googleapis.com/auth/plus.login": { - "description": "Know the list of people in your circles, your age range, and language" - }, - "https://www.googleapis.com/auth/userinfo.profile": { - "description": "View your basic profile info" - } - } + "parameters": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" + }, + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" + }, + "$.xgafv": { + "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" + ] + }, + "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.", + "default": "true", + "type": "boolean", + "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": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" + }, + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" } }, - "rootUrl": "https://people.googleapis.com/", - "ownerDomain": "google.com", - "name": "people", - "batchPath": "batch", - "title": "Google People API" + "version": "v1", + "baseUrl": "https://people.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Provides access to information about profiles and contacts.", + "servicePath": "", + "basePath": "", + "revision": "20170718", + "id": "people:v1", + "documentationLink": "https://developers.google.com/people/", + "discoveryVersion": "v1", + "version_module": "True" } diff --git a/DiscoveryJson/playmoviespartner_v1.json b/DiscoveryJson/playmoviespartner_v1.json index 61a97c36d8..c5cf2ab75f 100644 --- a/DiscoveryJson/playmoviespartner_v1.json +++ b/DiscoveryJson/playmoviespartner_v1.json @@ -1,164 +1,72 @@ { + "canonicalName": "Play Movies", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/playmovies_partner.readonly": { + "description": "View the digital assets you publish on Google Play Movies and TV" + } + } + } + }, + "kind": "discovery#restDescription", + "servicePath": "", + "description": "Gets the delivery status of titles for Google Play Movies Partners.", + "rootUrl": "https://playmoviespartner.googleapis.com/", "basePath": "", "ownerDomain": "google.com", "name": "playmoviespartner", "batchPath": "batch", - "id": "playmoviespartner:v1", "documentationLink": "https://developers.google.com/playmoviespartner/", "revision": "20170711", + "id": "playmoviespartner:v1", "title": "Google Play Movies Partner API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "accounts": { "resources": { - "storeInfos": { + "orders": { "methods": { "list": { - "description": "List StoreInfos owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.", + "description": "List Orders owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.", "httpMethod": "GET", "parameterOrder": [ "accountId" ], "response": { - "$ref": "ListStoreInfosResponse" + "$ref": "ListOrdersResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/playmovies_partner.readonly" - ], "parameters": { - "seasonIds": { - "description": "Filter StoreInfos that match any of the given `season_id`s.", - "type": "string", - "repeated": true, - "location": "query" - }, "pageToken": { + "location": "query", "description": "See _List methods rules_ for info about this field.", - "type": "string", - "location": "query" + "type": "string" }, - "videoId": { - "description": "Filter StoreInfos that match a given `video_id`.\nNOTE: this field is deprecated and will be removed on V2; `video_ids`\nshould be used instead.", - "type": "string", - "location": "query" + "customId": { + "location": "query", + "description": "Filter Orders that match a case-insensitive, partner-specific custom id.", + "type": "string" }, "videoIds": { - "description": "Filter StoreInfos that match any of the given `video_id`s.", - "type": "string", "repeated": true, - "location": "query" + "location": "query", + "description": "Filter Orders that match any of the given `video_id`s.", + "type": "string" }, "pageSize": { + "location": "query", "format": "int32", "description": "See _List methods rules_ for info about this field.", - "type": "integer", - "location": "query" - }, - "mids": { - "description": "Filter StoreInfos that match any of the given `mid`s.", - "type": "string", - "repeated": true, - "location": "query" + "type": "integer" }, "pphNames": { - "location": "query", - "description": "See _List methods rules_ for info about this field.", - "type": "string", - "repeated": true - }, - "countries": { - "location": "query", - "description": "Filter StoreInfos that match (case-insensitive) any of the given country\ncodes, using the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\").", - "type": "string", - "repeated": true - }, - "studioNames": { - "type": "string", "repeated": true, "location": "query", - "description": "See _List methods rules_ for info about this field." - }, - "name": { - "description": "Filter that matches StoreInfos with a `name` or `show_name`\nthat contains the given case-insensitive name.", - "type": "string", - "location": "query" + "description": "See _List methods rules_ for info about this field.", + "type": "string" }, - "accountId": { - "description": "REQUIRED. See _General rules_ for more information about this field.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/accounts/{accountId}/storeInfos", - "path": "v1/accounts/{accountId}/storeInfos", - "id": "playmoviespartner.accounts.storeInfos.list" - } - }, - "resources": { - "country": { - "methods": { - "get": { - "response": { - "$ref": "StoreInfo" - }, - "parameterOrder": [ - "accountId", - "videoId", - "country" - ], - "httpMethod": "GET", - "parameters": { - "country": { - "location": "path", - "description": "REQUIRED. Edit country.", - "type": "string", - "required": true - }, - "videoId": { - "location": "path", - "description": "REQUIRED. Video ID.", - "type": "string", - "required": true - }, - "accountId": { - "location": "path", - "description": "REQUIRED. See _General rules_ for more information about this field.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/playmovies_partner.readonly" - ], - "flatPath": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}", - "id": "playmoviespartner.accounts.storeInfos.country.get", - "path": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}", - "description": "Get a StoreInfo given its video id and country.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method." - } - } - } - } - }, - "orders": { - "methods": { - "list": { - "description": "List Orders owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.", - "response": { - "$ref": "ListOrdersResponse" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/playmovies_partner.readonly" - ], - "parameters": { "status": { - "description": "Filter Orders that match one of the given status.", - "type": "string", "repeated": true, "location": "query", "enum": [ @@ -168,7 +76,9 @@ "STATUS_PROCESSING", "STATUS_UNFULFILLED", "STATUS_NOT_AVAILABLE" - ] + ], + "description": "Filter Orders that match one of the given status.", + "type": "string" }, "studioNames": { "description": "See _List methods rules_ for info about this field.", @@ -177,50 +87,29 @@ "location": "query" }, "name": { - "type": "string", "location": "query", - "description": "Filter that matches Orders with a `name`, `show`, `season` or `episode`\nthat contains the given case-insensitive name." + "description": "Filter that matches Orders with a `name`, `show`, `season` or `episode`\nthat contains the given case-insensitive name.", + "type": "string" }, "accountId": { "description": "REQUIRED. See _General rules_ for more information about this field.", "type": "string", "required": true, "location": "path" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "See _List methods rules_ for info about this field." - }, - "customId": { - "location": "query", - "description": "Filter Orders that match a case-insensitive, partner-specific custom id.", - "type": "string" - }, - "videoIds": { - "repeated": true, - "location": "query", - "description": "Filter Orders that match any of the given `video_id`s.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "See _List methods rules_ for info about this field.", - "type": "integer", - "location": "query" - }, - "pphNames": { - "description": "See _List methods rules_ for info about this field.", - "type": "string", - "repeated": true, - "location": "query" } }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ], "flatPath": "v1/accounts/{accountId}/orders", - "id": "playmoviespartner.accounts.orders.list", - "path": "v1/accounts/{accountId}/orders" + "path": "v1/accounts/{accountId}/orders", + "id": "playmoviespartner.accounts.orders.list" }, "get": { + "flatPath": "v1/accounts/{accountId}/orders/{orderId}", + "id": "playmoviespartner.accounts.orders.get", + "path": "v1/accounts/{accountId}/orders/{orderId}", + "description": "Get an Order given its id.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method.", "response": { "$ref": "Order" }, @@ -234,10 +123,10 @@ ], "parameters": { "orderId": { + "location": "path", "description": "REQUIRED. Order ID.", "type": "string", - "required": true, - "location": "path" + "required": true }, "accountId": { "description": "REQUIRED. See _General rules_ for more information about this field.", @@ -245,18 +134,13 @@ "required": true, "location": "path" } - }, - "flatPath": "v1/accounts/{accountId}/orders/{orderId}", - "id": "playmoviespartner.accounts.orders.get", - "path": "v1/accounts/{accountId}/orders/{orderId}", - "description": "Get an Order given its id.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method." + } } } }, "avails": { "methods": { "list": { - "description": "List Avails owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.", "response": { "$ref": "ListAvailsResponse" }, @@ -264,51 +148,54 @@ "accountId" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ], "parameters": { "title": { "location": "query", "description": "Filter that matches Avails with a `title_internal_alias`,\n`series_title_internal_alias`, `season_title_internal_alias`,\nor `episode_title_internal_alias` that contains the given\ncase-insensitive title.", "type": "string" }, - "pageToken": { - "location": "query", - "description": "See _List methods rules_ for info about this field.", - "type": "string" - }, "videoIds": { "type": "string", "repeated": true, "location": "query", "description": "Filter Avails that match any of the given `video_id`s." }, + "pageToken": { + "description": "See _List methods rules_ for info about this field.", + "type": "string", + "location": "query" + }, "pageSize": { + "location": "query", "format": "int32", "description": "See _List methods rules_ for info about this field.", - "type": "integer", - "location": "query" + "type": "integer" }, "altIds": { - "location": "query", "description": "Filter Avails that match (case-insensitive) any of the given partner-specific custom ids.", "type": "string", - "repeated": true + "repeated": true, + "location": "query" }, "pphNames": { + "location": "query", "description": "See _List methods rules_ for info about this field.", "type": "string", - "repeated": true, - "location": "query" + "repeated": true }, "altId": { - "location": "query", "description": "Filter Avails that match a case-insensitive, partner-specific custom id.\nNOTE: this field is deprecated and will be removed on V2; `alt_ids`\nshould be used instead.", - "type": "string" + "type": "string", + "location": "query" }, "studioNames": { + "type": "string", "repeated": true, "location": "query", - "description": "See _List methods rules_ for info about this field.", - "type": "string" + "description": "See _List methods rules_ for info about this field." }, "accountId": { "description": "REQUIRED. See _General rules_ for more information about this field.", @@ -317,49 +204,176 @@ "location": "path" }, "territories": { - "description": "Filter Avails that match (case-insensitive) any of the given country codes,\nusing the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\").", "type": "string", "repeated": true, - "location": "query" + "location": "query", + "description": "Filter Avails that match (case-insensitive) any of the given country codes,\nusing the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\")." } }, - "scopes": [ - "https://www.googleapis.com/auth/playmovies_partner.readonly" - ], "flatPath": "v1/accounts/{accountId}/avails", "id": "playmoviespartner.accounts.avails.list", - "path": "v1/accounts/{accountId}/avails" + "path": "v1/accounts/{accountId}/avails", + "description": "List Avails owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method." }, "get": { - "description": "Get an Avail given its avail group id and avail id.", - "httpMethod": "GET", + "response": { + "$ref": "Avail" + }, "parameterOrder": [ "accountId", "availId" ], + "httpMethod": "GET", + "parameters": { + "availId": { + "description": "REQUIRED. Avail ID.", + "type": "string", + "required": true, + "location": "path" + }, + "accountId": { + "location": "path", + "description": "REQUIRED. See _General rules_ for more information about this field.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ], + "flatPath": "v1/accounts/{accountId}/avails/{availId}", + "id": "playmoviespartner.accounts.avails.get", + "path": "v1/accounts/{accountId}/avails/{availId}", + "description": "Get an Avail given its avail group id and avail id." + } + } + }, + "storeInfos": { + "methods": { + "list": { + "description": "List StoreInfos owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.", + "httpMethod": "GET", + "parameterOrder": [ + "accountId" + ], "response": { - "$ref": "Avail" + "$ref": "ListStoreInfosResponse" }, "parameters": { + "videoIds": { + "repeated": true, + "location": "query", + "description": "Filter StoreInfos that match any of the given `video_id`s.", + "type": "string" + }, + "videoId": { + "location": "query", + "description": "Filter StoreInfos that match a given `video_id`.\nNOTE: this field is deprecated and will be removed on V2; `video_ids`\nshould be used instead.", + "type": "string" + }, + "pageToken": { + "description": "See _List methods rules_ for info about this field.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "See _List methods rules_ for info about this field.", + "type": "integer" + }, + "mids": { + "repeated": true, + "location": "query", + "description": "Filter StoreInfos that match any of the given `mid`s.", + "type": "string" + }, + "pphNames": { + "description": "See _List methods rules_ for info about this field.", + "type": "string", + "repeated": true, + "location": "query" + }, + "countries": { + "type": "string", + "repeated": true, + "location": "query", + "description": "Filter StoreInfos that match (case-insensitive) any of the given country\ncodes, using the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\")." + }, + "name": { + "location": "query", + "description": "Filter that matches StoreInfos with a `name` or `show_name`\nthat contains the given case-insensitive name.", + "type": "string" + }, + "studioNames": { + "description": "See _List methods rules_ for info about this field.", + "type": "string", + "repeated": true, + "location": "query" + }, "accountId": { "description": "REQUIRED. See _General rules_ for more information about this field.", "type": "string", "required": true, "location": "path" }, - "availId": { - "location": "path", - "description": "REQUIRED. Avail ID.", + "seasonIds": { + "location": "query", + "description": "Filter StoreInfos that match any of the given `season_id`s.", "type": "string", - "required": true + "repeated": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ], + "flatPath": "v1/accounts/{accountId}/storeInfos", + "path": "v1/accounts/{accountId}/storeInfos", + "id": "playmoviespartner.accounts.storeInfos.list" + } + }, + "resources": { + "country": { + "methods": { + "get": { + "response": { + "$ref": "StoreInfo" + }, + "parameterOrder": [ + "accountId", + "videoId", + "country" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ], + "parameters": { + "country": { + "description": "REQUIRED. Edit country.", + "type": "string", + "required": true, + "location": "path" + }, + "videoId": { + "description": "REQUIRED. Video ID.", + "type": "string", + "required": true, + "location": "path" + }, + "accountId": { + "location": "path", + "description": "REQUIRED. See _General rules_ for more information about this field.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}", + "id": "playmoviespartner.accounts.storeInfos.country.get", + "path": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}", + "description": "Get a StoreInfo given its video id and country.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method." } - }, - "scopes": [ - "https://www.googleapis.com/auth/playmovies_partner.readonly" - ], - "flatPath": "v1/accounts/{accountId}/avails/{availId}", - "path": "v1/accounts/{accountId}/avails/{availId}", - "id": "playmoviespartner.accounts.avails.get" + } } } } @@ -368,25 +382,25 @@ }, "parameters": { "access_token": { + "location": "query", "description": "OAuth access token.", - "type": "string", - "location": "query" + "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." + "description": "API key. 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", - "location": "query" + "type": "string" }, "pp": { + "location": "query", "description": "Pretty-print response.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "bearer_token": { "location": "query", @@ -404,10 +418,10 @@ "type": "string" }, "prettyPrint": { + "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, "uploadType": { "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", @@ -415,13 +429,11 @@ "location": "query" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -430,16 +442,16 @@ "enum": [ "1", "2" - ] + ], + "description": "V1 error format.", + "type": "string" }, "callback": { + "location": "query", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "alt": { - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -451,80 +463,29 @@ "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" } }, "schemas": { "Order": { - "id": "Order", "description": "An Order tracks the fulfillment of an Edit when delivered using the\nlegacy, non-component-based delivery.\n\nEach Order is uniquely identified by an `order_id`, which is generated\nby Google.\n\nExternally, Orders can also be identified by partners using its `custom_id`\n(when provided).", "type": "object", "properties": { - "orderId": { - "description": "ID internally generated by Google to uniquely identify an Order.\nExample: 'abcde12_x'", - "type": "string" - }, - "normalizedPriority": { - "enum": [ - "NORMALIZED_PRIORITY_UNSPECIFIED", - "LOW_PRIORITY", - "HIGH_PRIORITY" - ], - "description": "A simpler representation of the priority.", - "type": "string", - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "A low-priority asset, typically from a library movie.", - "A high-priority asset, typically from a new release or box office hit." - ] - }, - "type": { - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "A movie picture.", - "A season of a TV show.", - "An episode of a TV show.", - "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" - ], - "enum": [ - "TITLE_TYPE_UNSPECIFIED", - "MOVIE", - "SEASON", - "EPISODE", - "BUNDLE" - ], - "description": "Type of the Edit linked to the Order.", - "type": "string" - }, - "rejectionNote": { - "type": "string", - "description": "Field explaining why an Order has been rejected.\nExample: \"Trailer audio is 2ch mono, please re-deliver in stereo\"." - }, - "channelId": { - "description": "YouTube Channel ID that should be used to fulfill the Order.\nExample: \"UCRG64darCZhb\".", - "type": "string" - }, - "pphName": { - "description": "Name of the post-production house that manages the Edit ordered.", - "type": "string" - }, - "legacyPriority": { - "description": "Legacy Order priority, as defined by Google.\nExample: 'P0'", - "type": "string" + "priority": { + "format": "double", + "description": "Order priority, as defined by Google.\nThe higher the value, the higher the priority.\nExample: 90", + "type": "number" }, "orderedTime": { "format": "google-datetime", "description": "Timestamp when the Order was created.", "type": "string" }, - "priority": { - "format": "double", - "description": "Order priority, as defined by Google.\nThe higher the value, the higher the priority.\nExample: 90", - "type": "number" - }, "videoId": { - "description": "Google-generated ID identifying the video linked to this Order, once\ndelivered.\nExample: 'gtry456_xc'.", - "type": "string" + "type": "string", + "description": "Google-generated ID identifying the video linked to this Order, once\ndelivered.\nExample: 'gtry456_xc'." }, "episodeName": { "description": "Default Episode name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The - Pilot\".", @@ -543,6 +504,14 @@ "type": "string" }, "status": { + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_APPROVED", + "STATUS_FAILED", + "STATUS_PROCESSING", + "STATUS_UNFULFILLED", + "STATUS_NOT_AVAILABLE" + ], "description": "High-level status of the order.", "type": "string", "enumDescriptions": [ @@ -552,17 +521,20 @@ "Waiting for Google to process the asset.", "Waiting for partner to deliver the asset.", "Used when Status is not available (i.e: Orders for TV Seasons)." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "STATUS_APPROVED", - "STATUS_FAILED", - "STATUS_PROCESSING", - "STATUS_UNFULFILLED", - "STATUS_NOT_AVAILABLE" ] }, "statusDetail": { + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "Approved by Google's Quality Control team.", + "Rejected by Google's Quality Control team, pending partner redelivery.", + "Internal error while processing the Order.", + "Waiting for initial delivery from partner.", + "Used on Orders that do not have Status, like TV Seasons.", + "Waiting for re-delivery from partner.", + "Asset was delivered by partner, but is being reviewed by Google's\nQuality Control team.", + "Waiting for Google to process the asset." + ], "enum": [ "ORDER_STATUS_UNSPECIFIED", "ORDER_STATUS_QC_APPROVED", @@ -575,18 +547,7 @@ "ORDER_STATUS_FILE_PROCESSING" ], "description": "Detailed status of the order", - "type": "string", - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "Approved by Google's Quality Control team.", - "Rejected by Google's Quality Control team, pending partner redelivery.", - "Internal error while processing the Order.", - "Waiting for initial delivery from partner.", - "Used on Orders that do not have Status, like TV Seasons.", - "Waiting for re-delivery from partner.", - "Asset was delivered by partner, but is being reviewed by Google's\nQuality Control team.", - "Waiting for Google to process the asset." - ] + "type": "string" }, "name": { "description": "Default Edit name,\nusually in the language of the country of origin.\nExample: \"Googlers, The\".", @@ -597,9 +558,9 @@ "type": "string" }, "receivedTime": { - "type": "string", "format": "google-datetime", - "description": "Timestamp when the Order was fulfilled." + "description": "Timestamp when the Order was fulfilled.", + "type": "string" }, "seasonName": { "description": "Default Season name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\".", @@ -619,10 +580,63 @@ "type": "string" }, "showName": { - "description": "Default Show name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The\".", + "type": "string", + "description": "Default Show name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The\"." + }, + "orderId": { + "description": "ID internally generated by Google to uniquely identify an Order.\nExample: 'abcde12_x'", + "type": "string" + }, + "normalizedPriority": { + "enum": [ + "NORMALIZED_PRIORITY_UNSPECIFIED", + "LOW_PRIORITY", + "HIGH_PRIORITY" + ], + "description": "A simpler representation of the priority.", + "type": "string", + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "A low-priority asset, typically from a library movie.", + "A high-priority asset, typically from a new release or box office hit." + ] + }, + "type": { + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "A movie picture.", + "A season of a TV show.", + "An episode of a TV show.", + "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" + ], + "enum": [ + "TITLE_TYPE_UNSPECIFIED", + "MOVIE", + "SEASON", + "EPISODE", + "BUNDLE" + ], + "description": "Type of the Edit linked to the Order.", + "type": "string" + }, + "rejectionNote": { + "description": "Field explaining why an Order has been rejected.\nExample: \"Trailer audio is 2ch mono, please re-deliver in stereo\".", + "type": "string" + }, + "channelId": { + "description": "YouTube Channel ID that should be used to fulfill the Order.\nExample: \"UCRG64darCZhb\".", + "type": "string" + }, + "pphName": { + "description": "Name of the post-production house that manages the Edit ordered.", + "type": "string" + }, + "legacyPriority": { + "description": "Legacy Order priority, as defined by Google.\nExample: 'P0'", "type": "string" } - } + }, + "id": "Order" }, "ListStoreInfosResponse": { "id": "ListStoreInfosResponse", @@ -648,38 +662,10 @@ } }, "ListAvailsResponse": { - "properties": { - "avails": { - "description": "List of Avails that match the request criteria.", - "items": { - "$ref": "Avail" - }, - "type": "array" - }, - "nextPageToken": { - "description": "See _List methods rules_ for info about this field.", - "type": "string" - }, - "totalSize": { - "format": "int32", - "description": "See _List methods rules_ for more information about this field.", - "type": "integer" - } - }, "id": "ListAvailsResponse", "description": "Response to the 'ListAvails' method.", - "type": "object" - }, - "ListOrdersResponse": { "type": "object", - "properties": { - "orders": { - "description": "List of Orders that match the request criteria.", - "items": { - "$ref": "Order" - }, - "type": "array" - }, + "properties": { "nextPageToken": { "description": "See _List methods rules_ for info about this field.", "type": "string" @@ -688,23 +674,57 @@ "format": "int32", "description": "See _List methods rules_ for more information about this field.", "type": "integer" + }, + "avails": { + "description": "List of Avails that match the request criteria.", + "items": { + "$ref": "Avail" + }, + "type": "array" } - }, - "id": "ListOrdersResponse", - "description": "Response to the 'ListOrders' method." + } }, "StoreInfo": { - "id": "StoreInfo", "description": "Information about a playable sequence (video) associated with an Edit\nand available at the Google Play Store.\n\nInternally, each StoreInfo is uniquely identified by a `video_id`\nand `country`.\n\nExternally, Title-level EIDR or Edit-level EIDR, if provided,\ncan also be used to identify a specific title or edit in a country.", "type": "object", "properties": { + "country": { + "description": "Country where Edit is available in ISO 3166-1 alpha-2 country\ncode.\nExample: \"US\".", + "type": "string" + }, + "showId": { + "description": "Google-generated ID identifying the show linked to the Edit.\nOnly available for TV Edits.\nExample: 'et2hsue_x'", + "type": "string" + }, + "type": { + "enum": [ + "TITLE_TYPE_UNSPECIFIED", + "MOVIE", + "SEASON", + "EPISODE", + "BUNDLE" + ], + "description": "Edit type, like Movie, Episode or Season.", + "type": "string", + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "A movie picture.", + "A season of a TV show.", + "An episode of a TV show.", + "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" + ] + }, + "trailerId": { + "description": "Google-generated ID identifying the trailer linked to the Edit.\nExample: 'bhd_4e_cx'", + "type": "string" + }, "hasHdOffer": { "description": "Whether the Edit has a HD offer.", "type": "boolean" }, "mid": { - "type": "string", - "description": "Knowledge Graph ID associated to this Edit, if available.\nThis ID links the Edit to its knowledge entity, externally accessible\nat http://freebase.com.\nIn the absense of Title EIDR or Edit EIDR, this ID helps link together\nmultiple Edits across countries.\nExample: '/m/0ffx29'" + "description": "Knowledge Graph ID associated to this Edit, if available.\nThis ID links the Edit to its knowledge entity, externally accessible\nat http://freebase.com.\nIn the absense of Title EIDR or Edit EIDR, this ID helps link together\nmultiple Edits across countries.\nExample: '/m/0ffx29'", + "type": "string" }, "hasAudio51": { "description": "Whether the Edit has a 5.1 channel audio track.", @@ -719,8 +739,8 @@ "type": "string" }, "titleLevelEidr": { - "description": "Title-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\".", - "type": "string" + "type": "string", + "description": "Title-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\"." }, "seasonName": { "description": "Default Season name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\".", @@ -743,13 +763,13 @@ "type": "boolean" }, "liveTime": { - "type": "string", "format": "google-datetime", - "description": "Timestamp when the Edit went live on the Store." + "description": "Timestamp when the Edit went live on the Store.", + "type": "string" }, "videoId": { - "description": "Google-generated ID identifying the video linked to the Edit.\nExample: 'gtry456_xc'", - "type": "string" + "type": "string", + "description": "Google-generated ID identifying the video linked to the Edit.\nExample: 'gtry456_xc'" }, "hasInfoCards": { "description": "Whether the Edit has info cards.", @@ -791,94 +811,29 @@ "showName": { "description": "Default Show name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The\".", "type": "string" - }, - "country": { - "description": "Country where Edit is available in ISO 3166-1 alpha-2 country\ncode.\nExample: \"US\".", - "type": "string" - }, - "showId": { - "description": "Google-generated ID identifying the show linked to the Edit.\nOnly available for TV Edits.\nExample: 'et2hsue_x'", - "type": "string" - }, - "type": { - "description": "Edit type, like Movie, Episode or Season.", - "type": "string", - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "A movie picture.", - "A season of a TV show.", - "An episode of a TV show.", - "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" - ], - "enum": [ - "TITLE_TYPE_UNSPECIFIED", - "MOVIE", - "SEASON", - "EPISODE", - "BUNDLE" - ] - }, - "trailerId": { - "type": "string", - "description": "Google-generated ID identifying the trailer linked to the Edit.\nExample: 'bhd_4e_cx'" } - } + }, + "id": "StoreInfo" }, "Avail": { - "description": "An Avail describes the Availability Window of a specific Edit in a given\ncountry, which means the period Google is allowed to sell or rent the Edit.\n\nAvails are exposed in EMA format Version 1.6b (available at\nhttp://www.movielabs.com/md/avails/)\n\nStudios can see the Avails for the Titles they own.\nPost-production houses cannot see any Avails.", "type": "object", "properties": { - "ratingReason": { - "description": "Value representing the rating reason.\nRating reasons should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nand comma-separated for inclusion of multiple reasons.\nExample: \"L, S, V\"", - "type": "string" - }, - "availId": { - "description": "ID internally generated by Google to uniquely identify an Avail.\nNot part of EMA Specs.", - "type": "string" - }, - "workType": { - "enum": [ - "TITLE_TYPE_UNSPECIFIED", - "MOVIE", - "SEASON", - "EPISODE", - "BUNDLE" - ], - "description": "Work type as enumerated in EMA.", - "type": "string", - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "A movie picture.", - "A season of a TV show.", - "An episode of a TV show.", - "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" - ] - }, - "episodeTitleInternalAlias": { - "description": "OPTIONAL.TV Only. Title used by involved parties to refer to this episode.\nOnly available on TV Avails.\nExample: \"Coding at Google\".", - "type": "string" - }, - "suppressionLiftDate": { - "description": "First date an Edit could be publically announced as becoming\navailable at a specific future date in territory of Avail.\n*Not* the Avail start date or pre-order start date.\nFormat is YYYY-MM-DD.\nOnly available for pre-orders.\nExample: \"2012-12-10\"", - "type": "string" - }, - "seasonAltId": { - "description": "Other identifier referring to the season, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1\".", - "type": "string" - }, - "encodeId": { - "description": "Manifestation Identifier. This should be the Manifestation\nLevel EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-7\"", - "type": "string" - }, - "priceType": { - "description": "Type of pricing that should be applied to this Avail\nbased on how the partner classify them.\nExample: \"Tier\", \"WSP\", \"SRP\", or \"Category\".", - "type": "string" - }, "captionIncluded": { "description": "Communicating if caption file will be delivered.", "type": "boolean" }, + "seasonNumber": { + "description": "The number assigned to the season within a series.\nOnly available on TV Avails.\nExample: \"1\".", + "type": "string" + }, "licenseType": { + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "Electronic Sell Through - purchase policy for unlimited viewing.", + "Video On Demand - rental policy for temporary viewing.", + "Subscription Video On Demand - used for subscription platforms.\nNot supported on Google Play.", + "Pre-order Electronic Sell Through - pre-order purchase only window." + ], "enum": [ "LICENSE_TYPE_UNSPECIFIED", "EST", @@ -887,45 +842,34 @@ "POEST" ], "description": "Type of transaction.", - "type": "string", - "enumDescriptions": [ - "Value could not be determined, please contact technical support if\nit should.", - "Electronic Sell Through - purchase policy for unlimited viewing.", - "Video On Demand - rental policy for temporary viewing.", - "Subscription Video On Demand - used for subscription platforms.\nNot supported on Google Play.", - "Pre-order Electronic Sell Through - pre-order purchase only window." - ] - }, - "seasonNumber": { - "description": "The number assigned to the season within a series.\nOnly available on TV Avails.\nExample: \"1\".", "type": "string" }, "releaseDate": { - "type": "string", - "description": "Release date of the Title in earliest released territory.\nTypically it is just the year, but it is free-form as per EMA spec.\nExamples: \"1979\", \"Oct 2014\"" + "description": "Release date of the Title in earliest released territory.\nTypically it is just the year, but it is free-form as per EMA spec.\nExamples: \"1979\", \"Oct 2014\"", + "type": "string" }, "end": { "description": "End of term in YYYY-MM-DD format in the timezone of the country\nof the Avail.\n\"Open\" if no end date is available.\nExample: \"2019-02-17\"", "type": "string" }, "videoId": { - "description": "Google-generated ID identifying the video linked to this Avail, once\ndelivered.\nNot part of EMA Specs.\nExample: 'gtry456_xc'", - "type": "string" + "type": "string", + "description": "Google-generated ID identifying the video linked to this Avail, once\ndelivered.\nNot part of EMA Specs.\nExample: 'gtry456_xc'" }, "start": { "description": "Start of term in YYYY-MM-DD format in the timezone of the\ncountry of the Avail.\nExample: \"2013-05-14\".", "type": "string" }, - "ratingSystem": { - "description": "Rating system applied to the version of title within territory\nof Avail.\nRating systems should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nExample: \"MPAA\"", - "type": "string" - }, "pphNames": { + "description": "Name of the post-production houses that manage the Avail.\nNot part of EMA Specs.", "items": { "type": "string" }, - "type": "array", - "description": "Name of the post-production houses that manage the Avail.\nNot part of EMA Specs." + "type": "array" + }, + "ratingSystem": { + "description": "Rating system applied to the version of title within territory\nof Avail.\nRating systems should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nExample: \"MPAA\"", + "type": "string" }, "seriesAltId": { "description": "Other identifier referring to the series, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers\".", @@ -944,7 +888,6 @@ "type": "string" }, "formatProfile": { - "description": "Indicates the format profile covered by the transaction.", "type": "string", "enumDescriptions": [ "Value could not be determined, please contact technical support if\nit should.", @@ -957,7 +900,8 @@ "SD", "HD", "UHD" - ] + ], + "description": "Indicates the format profile covered by the transaction." }, "ratingValue": { "description": "Value representing the rating.\nRatings should be formatted as per http://www.movielabs.com/md/ratings/\nExample: \"PG\"", @@ -975,16 +919,16 @@ "description": "Spoken language of the intended audience.\nLanguage shall be encoded in accordance with RFC 5646.\nExample: \"fr\".", "type": "string" }, - "productId": { - "description": "Edit Identifier. This should be the Edit Level EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-6\"", + "captionExemption": { + "description": "Communicating an exempt category as defined by FCC regulations.\nIt is not required for non-US Avails.\nExample: \"1\"", "type": "string" }, "displayName": { "description": "The name of the studio that owns the Edit referred in the Avail.\nThis is the equivalent of `studio_name` in other resources, but it follows\nthe EMA nomenclature.\nExample: \"Google Films\".", "type": "string" }, - "captionExemption": { - "description": "Communicating an exempt category as defined by FCC regulations.\nIt is not required for non-US Avails.\nExample: \"1\"", + "productId": { + "description": "Edit Identifier. This should be the Edit Level EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-6\"", "type": "string" }, "seasonTitleInternalAlias": { @@ -992,8 +936,8 @@ "type": "string" }, "priceValue": { - "description": "Value to be applied to the pricing type.\nExample: \"4\" or \"2.99\"", - "type": "string" + "type": "string", + "description": "Value to be applied to the pricing type.\nExample: \"4\" or \"2.99\"" }, "episodeAltId": { "description": "Other identifier referring to the episode, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1_3\".", @@ -1002,30 +946,86 @@ "territory": { "description": "ISO 3166-1 alpha-2 country code for the country or territory\nof this Avail.\nFor Avails, we use Territory in lieu of Country to comply with\nEMA specifications.\nBut please note that Territory and Country identify the same thing.\nExample: \"US\".", "type": "string" + }, + "ratingReason": { + "description": "Value representing the rating reason.\nRating reasons should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nand comma-separated for inclusion of multiple reasons.\nExample: \"L, S, V\"", + "type": "string" + }, + "availId": { + "description": "ID internally generated by Google to uniquely identify an Avail.\nNot part of EMA Specs.", + "type": "string" + }, + "workType": { + "type": "string", + "enumDescriptions": [ + "Value could not be determined, please contact technical support if\nit should.", + "A movie picture.", + "A season of a TV show.", + "An episode of a TV show.", + "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\"" + ], + "enum": [ + "TITLE_TYPE_UNSPECIFIED", + "MOVIE", + "SEASON", + "EPISODE", + "BUNDLE" + ], + "description": "Work type as enumerated in EMA." + }, + "episodeTitleInternalAlias": { + "description": "OPTIONAL.TV Only. Title used by involved parties to refer to this episode.\nOnly available on TV Avails.\nExample: \"Coding at Google\".", + "type": "string" + }, + "suppressionLiftDate": { + "description": "First date an Edit could be publically announced as becoming\navailable at a specific future date in territory of Avail.\n*Not* the Avail start date or pre-order start date.\nFormat is YYYY-MM-DD.\nOnly available for pre-orders.\nExample: \"2012-12-10\"", + "type": "string" + }, + "seasonAltId": { + "description": "Other identifier referring to the season, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1\".", + "type": "string" + }, + "encodeId": { + "description": "Manifestation Identifier. This should be the Manifestation\nLevel EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-7\"", + "type": "string" + }, + "priceType": { + "description": "Type of pricing that should be applied to this Avail\nbased on how the partner classify them.\nExample: \"Tier\", \"WSP\", \"SRP\", or \"Category\".", + "type": "string" + } + }, + "id": "Avail", + "description": "An Avail describes the Availability Window of a specific Edit in a given\ncountry, which means the period Google is allowed to sell or rent the Edit.\n\nAvails are exposed in EMA format Version 1.6b (available at\nhttp://www.movielabs.com/md/avails/)\n\nStudios can see the Avails for the Titles they own.\nPost-production houses cannot see any Avails." + }, + "ListOrdersResponse": { + "type": "object", + "properties": { + "orders": { + "description": "List of Orders that match the request criteria.", + "items": { + "$ref": "Order" + }, + "type": "array" + }, + "nextPageToken": { + "description": "See _List methods rules_ for info about this field.", + "type": "string" + }, + "totalSize": { + "format": "int32", + "description": "See _List methods rules_ for more information about this field.", + "type": "integer" } }, - "id": "Avail" + "id": "ListOrdersResponse", + "description": "Response to the 'ListOrders' 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" }, - "protocol": "rest", "version": "v1", - "baseUrl": "https://playmoviespartner.googleapis.com/", - "canonicalName": "Play Movies", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/playmovies_partner.readonly": { - "description": "View the digital assets you publish on Google Play Movies and TV" - } - } - } - }, - "kind": "discovery#restDescription", - "servicePath": "", - "description": "Gets the delivery status of titles for Google Play Movies Partners.", - "rootUrl": "https://playmoviespartner.googleapis.com/" + "baseUrl": "https://playmoviespartner.googleapis.com/" } diff --git a/DiscoveryJson/proximitybeacon_v1beta1.json b/DiscoveryJson/proximitybeacon_v1beta1.json index b0fe288b13..e81a9e4c10 100644 --- a/DiscoveryJson/proximitybeacon_v1beta1.json +++ b/DiscoveryJson/proximitybeacon_v1beta1.json @@ -1,60 +1,141 @@ { + "version": "v1beta1", + "baseUrl": "https://proximitybeacon.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/userlocation.beacon.registry": { + "description": "View and modify your beacons" + } + } + } + }, + "description": "Registers, manages, indexes, and searches beacons.", + "kind": "discovery#restDescription", + "servicePath": "", + "rootUrl": "https://proximitybeacon.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "proximitybeacon", + "batchPath": "batch", + "revision": "20170717", + "id": "proximitybeacon:v1beta1", + "documentationLink": "https://developers.google.com/beacons/proximity/", + "title": "Google Proximity Beacon API", "discoveryVersion": "v1", "ownerName": "Google", "version_module": "True", "resources": { - "v1beta1": { + "beaconinfo": { "methods": { - "getEidparams": { - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/eidparams", - "id": "proximitybeacon.getEidparams", - "path": "v1beta1/eidparams", - "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon.", + "getforobserved": { "response": { - "$ref": "EphemeralIdRegistrationParams" + "$ref": "GetInfoForObservedBeaconsResponse" }, "parameterOrder": [], - "httpMethod": "GET" + "httpMethod": "POST", + "parameters": {}, + "flatPath": "v1beta1/beaconinfo:getforobserved", + "id": "proximitybeacon.beaconinfo.getforobserved", + "path": "v1beta1/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" + } } } }, - "beacons": { + "namespaces": { "methods": { - "activate": { - "flatPath": "v1beta1/beacons/{beaconsId}:activate", - "path": "v1beta1/{+beaconName}:activate", - "id": "proximitybeacon.beacons.activate", - "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", - "httpMethod": "POST", + "list": { + "id": "proximitybeacon.namespaces.list", + "path": "v1beta1/namespaces", + "description": "Lists all attachment namespaces owned by your Google Developers Console\nproject. Attachment data associated with a beacon must include a\nnamespaced type, and the namespace must be owned by your project.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.", "response": { - "$ref": "Empty" + "$ref": "ListNamespacesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "projectId": { + "type": "string", + "location": "query", + "description": "The project id to list namespaces under.\nOptional." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/namespaces" + }, + "update": { + "response": { + "$ref": "Namespace" }, "parameterOrder": [ - "beaconName" + "namespaceName" ], + "httpMethod": "PUT", "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.", + "namespaceName": { + "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", "type": "string", "required": true, - "pattern": "^beacons/[^/]+$", + "pattern": "^namespaces/[^/]+$", "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 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" } }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ] - }, + ], + "flatPath": "v1beta1/namespaces/{namespacesId}", + "id": "proximitybeacon.namespaces.update", + "path": "v1beta1/{+namespaceName}", + "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.", + "request": { + "$ref": "Namespace" + } + } + } + }, + "v1beta1": { + "methods": { + "getEidparams": { + "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon.", + "response": { + "$ref": "EphemeralIdRegistrationParams" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/eidparams", + "id": "proximitybeacon.getEidparams", + "path": "v1beta1/eidparams" + } + } + }, + "beacons": { + "methods": { "get": { + "description": "Returns detailed information about the specified beacon.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.\n\nRequests may supply an Eddystone-EID beacon name in the form:\n`beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID\nbroadcast by the beacon. The returned `Beacon` object will contain the\nbeacon's stable Eddystone-UID. Clients not authorized to resolve the\nbeacon's ephemeral Eddystone-EID broadcast will receive an error.", + "response": { + "$ref": "Beacon" + }, + "parameterOrder": [ + "beaconName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], "parameters": { "beaconName": { "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", @@ -64,175 +145,172 @@ "location": "path" }, "projectId": { - "type": "string", "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." + "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], "flatPath": "v1beta1/beacons/{beaconsId}", "id": "proximitybeacon.beacons.get", - "path": "v1beta1/{+beaconName}", - "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.", - "parameterOrder": [ - "beaconName" - ], - "response": { - "$ref": "Beacon" - }, - "httpMethod": "GET" + "path": "v1beta1/{+beaconName}" }, "update": { - "flatPath": "v1beta1/beacons/{beaconsId}", - "path": "v1beta1/{+beaconName}", - "id": "proximitybeacon.beacons.update", "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", "request": { "$ref": "Beacon" }, - "httpMethod": "PUT", - "parameterOrder": [ - "beaconName" - ], "response": { "$ref": "Beacon" }, + "parameterOrder": [ + "beaconName" + ], + "httpMethod": "PUT", "parameters": { - "projectId": { - "location": "query", - "description": "The project id of the beacon to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string" - }, "beaconName": { "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.", "type": "string", "required": true, "pattern": "^beacons/[^/]+$" + }, + "projectId": { + "type": "string", + "location": "query", + "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." } }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ] + ], + "flatPath": "v1beta1/beacons/{beaconsId}", + "id": "proximitybeacon.beacons.update", + "path": "v1beta1/{+beaconName}" }, "decommission": { - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" + "id": "proximitybeacon.beacons.decommission", + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "beaconName" ], + "httpMethod": "POST", "parameters": { "beaconName": { - "pattern": "^beacons/[^/]+$", "location": "path", "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.", "type": "string", - "required": true + "required": true, + "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" + "type": "string", + "location": "query" } }, - "flatPath": "v1beta1/beacons/{beaconsId}:decommission", - "path": "v1beta1/{+beaconName}:decommission", - "id": "proximitybeacon.beacons.decommission", - "description": "Decommissions the specified beacon in the service. This beacon will no\nlonger be returned from `beaconinfo.getforobserved`. This operation is\npermanent -- you will not be able to re-register a beacon with this ID\nagain.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/beacons/{beaconsId}:decommission" + }, + "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.", "httpMethod": "POST", "parameterOrder": [ "beaconName" ], "response": { "$ref": "Empty" - } + }, + "parameters": { + "beaconName": { + "description": "Beacon that should be deactivated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "type": "string", + "required": true, + "pattern": "^beacons/[^/]+$", + "location": "path" + }, + "projectId": { + "description": "The project id of the beacon to deactivate. If the project id is not\nspecified then the project making the request is used. The project id must\nmatch the project that owns the beacon.\nOptional.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/beacons/{beaconsId}:deactivate", + "path": "v1beta1/{+beaconName}:deactivate", + "id": "proximitybeacon.beacons.deactivate" }, "delete": { - "httpMethod": "DELETE", + "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.", "response": { "$ref": "Empty" }, "parameterOrder": [ "beaconName" ], + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], "parameters": { + "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.", + "type": "string", + "required": true + }, "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": { - "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.", - "type": "string", - "required": true, - "pattern": "^beacons/[^/]+$", - "location": "path" } }, - "flatPath": "v1beta1/beacons/{beaconsId}", - "path": "v1beta1/{+beaconName}", - "id": "proximitybeacon.beacons.delete", - "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." + "flatPath": "v1beta1/beacons/{beaconsId}" }, - "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.", + "register": { "response": { - "$ref": "Empty" + "$ref": "Beacon" }, - "parameterOrder": [ - "beaconName" - ], + "parameterOrder": [], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], "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.", + "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" - }, - "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.", - "type": "string", - "required": true, - "pattern": "^beacons/[^/]+$", - "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}:deactivate", - "id": "proximitybeacon.beacons.deactivate", - "path": "v1beta1/{+beaconName}:deactivate" - }, - "register": { - "path": "v1beta1/beacons:register", + "flatPath": "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.", + "path": "v1beta1/beacons:register", "request": { "$ref": "Beacon" }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Beacon" - }, - "parameters": { - "projectId": { - "type": "string", - "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." - } - }, + "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": { "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], - "flatPath": "v1beta1/beacons:register" - }, - "list": { "parameters": { + "pageToken": { + "location": "query", + "description": "A pagination token obtained from a previous request to list beacons.", + "type": "string" + }, "pageSize": { "location": "query", "format": "int32", @@ -240,331 +318,297 @@ "type": "integer" }, "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`", - "type": "string" - }, - "projectId": { - "description": "The project id to list beacons under. If not present then the project\ncredential that made the request is used as the project.\nOptional.", "type": "string", "location": "query" }, - "pageToken": { + "projectId": { "location": "query", - "description": "A pagination token obtained from a previous request to list beacons.", + "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], "flatPath": "v1beta1/beacons", - "path": "v1beta1/beacons", "id": "proximitybeacon.beacons.list", + "path": "v1beta1/beacons", "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.", - "httpMethod": "GET", - "parameterOrder": [], "response": { "$ref": "ListBeaconsResponse" - } + }, + "parameterOrder": [], + "httpMethod": "GET" + }, + "activate": { + "httpMethod": "POST", + "parameterOrder": [ + "beaconName" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "parameters": { + "beaconName": { + "location": "path", + "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.", + "type": "string", + "required": true, + "pattern": "^beacons/[^/]+$" + }, + "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" + } + }, + "flatPath": "v1beta1/beacons/{beaconsId}:activate", + "path": "v1beta1/{+beaconName}:activate", + "id": "proximitybeacon.beacons.activate", + "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." } }, "resources": { - "attachments": { + "diagnostics": { "methods": { "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.", - "httpMethod": "GET", - "parameterOrder": [ - "beaconName" - ], + "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": "ListBeaconAttachmentsResponse" + "$ref": "ListDiagnosticsResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" + "parameterOrder": [ + "beaconName" ], + "httpMethod": "GET", "parameters": { "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.", + "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" }, - "namespacedType": { + "beaconName": { + "description": "Beacon that the diagnostics are for.", + "type": "string", + "required": true, + "pattern": "^beacons/[^/]+$", + "location": "path" + }, + "pageToken": { "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\".", + "description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.", "type": "string" }, - "beaconName": { - "pattern": "^beacons/[^/]+$", - "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.", - "type": "string", - "required": true + "alertFilter": { + "location": "query", + "enum": [ + "ALERT_UNSPECIFIED", + "WRONG_LOCATION", + "LOW_BATTERY" + ], + "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" + }, + "pageSize": { + "format": "int32", + "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.", + "type": "integer", + "location": "query" } }, - "flatPath": "v1beta1/beacons/{beaconsId}/attachments", - "path": "v1beta1/{+beaconName}/attachments", - "id": "proximitybeacon.beacons.attachments.list" - }, - "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.", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics", + "id": "proximitybeacon.beacons.diagnostics.list", + "path": "v1beta1/{+beaconName}/diagnostics" + } + } + }, + "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.", + "httpMethod": "DELETE", "response": { - "$ref": "DeleteAttachmentsResponse" + "$ref": "Empty" }, "parameterOrder": [ - "beaconName" + "attachmentName" ], - "httpMethod": "POST", "parameters": { "projectId": { - "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", - "type": "string", - "location": "query" - }, - "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.", + "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.", "type": "string" }, - "beaconName": { - "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", + "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.", "type": "string", "required": true, - "pattern": "^beacons/[^/]+$", - "location": "path" + "pattern": "^beacons/[^/]+/attachments/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete", - "id": "proximitybeacon.beacons.attachments.batchDelete", - "path": "v1beta1/{+beaconName}/attachments:batchDelete" + "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", + "path": "v1beta1/{+attachmentName}", + "id": "proximitybeacon.beacons.attachments.delete" }, - "create": { - "response": { - "$ref": "BeaconAttachment" - }, + "list": { + "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.", + "httpMethod": "GET", "parameterOrder": [ "beaconName" ], - "httpMethod": "POST", + "response": { + "$ref": "ListBeaconAttachmentsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], "parameters": { - "projectId": { - "location": "query", - "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", - "type": "string" + "namespacedType": { + "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".", + "type": "string", + "location": "query" }, "beaconName": { - "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.", + "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.", "type": "string", "required": true, - "pattern": "^beacons/[^/]+$" + "pattern": "^beacons/[^/]+$", + "location": "path" + }, + "projectId": { + "location": "query", + "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.", + "type": "string" } }, - "flatPath": "v1beta1/beacons/{beaconsId}/attachments", - "id": "proximitybeacon.beacons.attachments.create", - "path": "v1beta1/{+beaconName}/attachments", - "request": { - "$ref": "BeaconAttachment" - }, - "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." + "flatPath": "v1beta1/beacons/{beaconsId}/attachments" }, - "delete": { - "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", - "httpMethod": "DELETE", - "parameterOrder": [ - "attachmentName" - ], + "batchDelete": { + "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`, all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.", "response": { - "$ref": "Empty" + "$ref": "DeleteAttachmentsResponse" }, + "parameterOrder": [ + "beaconName" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], "parameters": { - "projectId": { + "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", - "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional." + "location": "query" }, - "attachmentName": { - "description": "The attachment name (`attachmentName`) of\nthe attachment to remove. For example:\n`beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For\nEddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the\nbeacon's current EID, or its \"stable\" Eddystone-UID.\nRequired.", + "beaconName": { + "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.", "type": "string", "required": true, - "pattern": "^beacons/[^/]+/attachments/[^/]+$", + "pattern": "^beacons/[^/]+$", "location": "path" + }, + "projectId": { + "type": "string", + "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." } }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", - "path": "v1beta1/{+attachmentName}", - "id": "proximitybeacon.beacons.attachments.delete" - } - } - }, - "diagnostics": { - "methods": { - "list": { - "httpMethod": "GET", + "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete", + "id": "proximitybeacon.beacons.attachments.batchDelete", + "path": "v1beta1/{+beaconName}/attachments:batchDelete" + }, + "create": { + "httpMethod": "POST", "parameterOrder": [ "beaconName" ], "response": { - "$ref": "ListDiagnosticsResponse" + "$ref": "BeaconAttachment" }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], "parameters": { - "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" - }, "beaconName": { "pattern": "^beacons/[^/]+$", "location": "path", - "description": "Beacon that the diagnostics are for.", + "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.", "type": "string", "required": true }, - "pageToken": { - "location": "query", - "description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.", - "type": "string" - }, - "alertFilter": { + "projectId": { "location": "query", - "enum": [ - "ALERT_UNSPECIFIED", - "WRONG_LOCATION", - "LOW_BATTERY" - ], - "description": "Requests only beacons that have the given alert. For example, to find\nbeacons that have low batteries use `alert_filter=LOW_BATTERY`.", + "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.", "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.", - "type": "integer" } }, - "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics", - "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." - } - } - } - } - }, - "beaconinfo": { - "methods": { - "getforobserved": { - "flatPath": "v1beta1/beaconinfo:getforobserved", - "path": "v1beta1/beaconinfo:getforobserved", - "id": "proximitybeacon.beaconinfo.getforobserved", - "request": { - "$ref": "GetInfoForObservedBeaconsRequest" - }, - "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.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GetInfoForObservedBeaconsResponse" - }, - "parameters": {} - } - } - }, - "namespaces": { - "methods": { - "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.", - "httpMethod": "GET", - "response": { - "$ref": "ListNamespacesResponse" - }, - "parameterOrder": [], - "parameters": { - "projectId": { - "location": "query", - "description": "The project id to list namespaces under.\nOptional.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/namespaces", - "path": "v1beta1/namespaces", - "id": "proximitybeacon.namespaces.list" - }, - "update": { - "response": { - "$ref": "Namespace" - }, - "parameterOrder": [ - "namespaceName" - ], - "httpMethod": "PUT", - "parameters": { - "projectId": { - "description": "The project id of the namespace to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "required": true + "flatPath": "v1beta1/beacons/{beaconsId}/attachments", + "path": "v1beta1/{+beaconName}/attachments", + "id": "proximitybeacon.beacons.attachments.create", + "request": { + "$ref": "BeaconAttachment" + }, + "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project." } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/namespaces/{namespacesId}", - "id": "proximitybeacon.namespaces.update", - "path": "v1beta1/{+namespaceName}", - "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.", - "request": { - "$ref": "Namespace" } } } } }, "parameters": { - "fields": { - "description": "Selector specifying which fields to include in a partial response.", + "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": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", "location": "query" }, + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" + }, "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" - ] + "type": "string" }, "callback": { "location": "query", @@ -572,7 +616,6 @@ "type": "string" }, "alt": { - "default": "json", "enum": [ "json", "media", @@ -585,83 +628,110 @@ "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response." + "description": "Data format for response.", + "default": "json" }, - "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.", + "key": { + "description": "API key. 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", - "location": "query" + "type": "string" }, "pp": { - "location": "query", "description": "Pretty-print response.", "default": "true", - "type": "boolean" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "type": "boolean", + "location": "query" + } + }, + "schemas": { + "IndoorLevel": { + "type": "object", + "properties": { + "name": { + "description": "The name of this level.", + "type": "string" + } + }, + "id": "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." }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "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": { + "day": { + "format": "int32", + "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.", + "type": "integer" + }, + "year": { + "format": "int32", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "type": "integer" + }, + "month": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" + } + }, + "id": "Date" }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "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.", + "items": { + "$ref": "Namespace" + }, + "type": "array" + } + }, + "id": "ListNamespacesResponse" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" - } - }, - "schemas": { "Diagnostics": { + "description": "Diagnostics for a single beacon.", + "type": "object", "properties": { - "estimatedLowBatteryDate": { - "$ref": "Date", - "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date." - }, "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": { - "description": "An unordered list of Alerts that the beacon has.", "items": { - "type": "string", "enum": [ "ALERT_UNSPECIFIED", "WRONG_LOCATION", "LOW_BATTERY" - ] + ], + "type": "string" }, "type": "array", "enumDescriptions": [ "Invalid value. Should never appear.", "The beacon has been reported in a location different than its registered\nlocation. This may indicate that the beacon has been moved. This signal\nis not 100% accurate, but indicates that further investigation is worth\nwhile.", "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." - ] + ], + "description": "An unordered list of Alerts that the beacon has." + }, + "estimatedLowBatteryDate": { + "$ref": "Date", + "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date." } }, - "id": "Diagnostics", - "description": "Diagnostics for a single beacon.", - "type": "object" + "id": "Diagnostics" }, "ListBeaconsResponse": { "description": "Response that contains list beacon results and pagination help.", @@ -698,11 +768,11 @@ "type": "array" }, "namespacedTypes": { - "description": "Specifies what kind of attachments to include in the response.\nWhen given, the response will include only attachments of the given types.\nWhen empty, no attachments will be returned. Must be in the format\n\u003cvar\u003enamespace/type\u003c/var\u003e. Accepts `*` to specify all types in\nall namespaces owned by the client.\nOptional.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "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." } }, "id": "GetInfoForObservedBeaconsRequest" @@ -717,29 +787,28 @@ "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" + }, + "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": { "format": "byte", "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.", "type": "string" }, "creationTimeMs": { - "type": "string", "format": "google-datetime", - "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch." - }, - "attachmentName": { - "description": "Resource name of this attachment. Attachment names have the format:\n\u003ccode\u003ebeacons/\u003cvar\u003ebeacon_id\u003c/var\u003e/attachments/\u003cvar\u003eattachment_id\u003c/var\u003e\u003c/code\u003e.\nLeave this empty on creation.", - "type": "string" - }, - "namespacedType": { - "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e. Namespace\nprovides type separation between clients. Type describes the type of\n`data`, for use by the client when parsing the `data` field.\nRequired.", + "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch.", "type": "string" } }, "id": "BeaconAttachment" }, "EphemeralIdRegistration": { - "id": "EphemeralIdRegistration", "description": "Write-only registration parameters for beacons using Eddystone-EID format.\nTwo ways of securely registering an Eddystone-EID beacon with the service\nare supported:\n\n1. Perform an ECDH key exchange via this API, including a previous call\n to `GET /v1beta1/eidparams`. In this case the fields\n `beacon_ecdh_public_key` and `service_ecdh_public_key` should be\n populated and `beacon_identity_key` should not be populated. This\n method ensures that only the two parties in the ECDH key exchange can\n compute the identity key, which becomes a secret between them.\n2. Derive or obtain the beacon's identity key via other secure means\n (perhaps an ECDH key exchange between the beacon and a mobile device\n or any other secure method), and then submit the resulting identity key\n to the service. In this case `beacon_identity_key` field should be\n populated, and neither of `beacon_ecdh_public_key` nor\n `service_ecdh_public_key` fields should be. The security of this method\n depends on how securely the parties involved (in particular the\n bluetooth client) handle the identity key, and obviously on how\n securely the identity key was generated.\n\nSee [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", "type": "object", "properties": { @@ -763,26 +832,27 @@ "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.", "type": "string" }, - "initialClockValue": { - "format": "uint64", - "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.", - "type": "string" - }, "beaconEcdhPublicKey": { "format": "byte", "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.", "type": "string" + }, + "initialClockValue": { + "format": "uint64", + "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.", + "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", "type": "object", "properties": { "latitude": { - "type": "number", "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0]." + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "type": "number" }, "longitude": { "format": "double", @@ -793,6 +863,8 @@ "id": "LatLng" }, "ListBeaconAttachmentsResponse": { + "description": "Response to `ListBeaconAttachments` that contains the requested attachments.", + "type": "object", "properties": { "attachments": { "description": "The attachments that corresponded to the request params.", @@ -802,30 +874,28 @@ "type": "array" } }, - "id": "ListBeaconAttachmentsResponse", - "description": "Response to `ListBeaconAttachments` that contains the requested attachments.", - "type": "object" + "id": "ListBeaconAttachmentsResponse" }, "Namespace": { "description": "An attachment namespace defines read and write access for all the attachments\ncreated under it. Each namespace is globally unique, and owned by one\nproject which is the only project that can create attachments under it.", "type": "object", "properties": { - "namespaceName": { - "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", - "type": "string" - }, "servingVisibility": { - "enumDescriptions": [ - "Do not use this value.", - "Served only to the project that owns the namespace.", - "Any project can subscribe to attachments under the namespace." - ], "enum": [ "VISIBILITY_UNSPECIFIED", "UNLISTED", "PUBLIC" ], "description": "Specifies what clients may receive attachments under this namespace\nvia `beaconinfo.getforobserved`.", + "type": "string", + "enumDescriptions": [ + "Do not use this value.", + "Served only to the project that owns the namespace.", + "Any project can subscribe to attachments under the namespace." + ] + }, + "namespaceName": { + "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", "type": "string" } }, @@ -835,6 +905,10 @@ "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.", "type": "object", "properties": { + "beaconName": { + "description": "The name under which the beacon is registered.", + "type": "string" + }, "attachments": { "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.", "items": { @@ -843,18 +917,13 @@ "type": "array" }, "advertisedId": { - "description": "The ID advertised by the beacon.", - "$ref": "AdvertisedId" - }, - "beaconName": { - "description": "The name under which the beacon is registered.", - "type": "string" + "$ref": "AdvertisedId", + "description": "The ID advertised by the beacon." } }, "id": "BeaconInfo" }, "AttachmentInfo": { - "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.", "type": "object", "properties": { "namespacedType": { @@ -867,11 +936,10 @@ "type": "string" } }, - "id": "AttachmentInfo" + "id": "AttachmentInfo", + "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons." }, "DeleteAttachmentsResponse": { - "description": "Response for a request to delete attachments.", - "type": "object", "properties": { "numDeleted": { "format": "int32", @@ -879,26 +947,28 @@ "type": "integer" } }, - "id": "DeleteAttachmentsResponse" + "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": { - "format": "byte", - "description": "The beacon service's public key for use by a beacon to derive its\nIdentity Key using Elliptic Curve Diffie-Hellman key exchange.", - "type": "string" - }, "maxRotationPeriodExponent": { "format": "uint32", "description": "Indicates the maximum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", "type": "integer" }, "minRotationPeriodExponent": { + "type": "integer", "format": "uint32", - "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", - "type": "integer" + "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent" + }, + "serviceEcdhPublicKey": { + "format": "byte", + "description": "The beacon service's public key for use by a beacon to derive its\nIdentity Key using Elliptic Curve Diffie-Hellman key exchange.", + "type": "string" } }, "id": "EphemeralIdRegistrationParams" @@ -907,10 +977,6 @@ "description": "Represents one beacon observed once.", "type": "object", "properties": { - "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.", - "$ref": "AdvertisedId" - }, "telemetry": { "format": "byte", "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.", @@ -920,6 +986,10 @@ "format": "google-datetime", "description": "Time when the beacon was observed.", "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" @@ -928,23 +998,21 @@ "description": "Response that contains the requested diagnostics.", "type": "object", "properties": { - "nextPageToken": { - "type": "string", - "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response." - }, "diagnostics": { "description": "The diagnostics matching the given request.", "items": { "$ref": "Diagnostics" }, "type": "array" + }, + "nextPageToken": { + "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.", + "type": "string" } }, "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.", @@ -954,32 +1022,13 @@ "type": "array" } }, - "id": "GetInfoForObservedBeaconsResponse" + "id": "GetInfoForObservedBeaconsResponse", + "description": "Information about the requested beacons, optionally including attachment\ndata.", + "type": "object" }, "Beacon": { - "description": "Details of a beacon device.", "type": "object", "properties": { - "status": { - "enum": [ - "STATUS_UNSPECIFIED", - "ACTIVE", - "DECOMMISSIONED", - "INACTIVE" - ], - "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." - ] - }, - "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" @@ -1003,47 +1052,66 @@ ] }, "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." + "description": "The identifier of a beacon as advertised by it. This field must be\npopulated when registering. It may be empty when updating a beacon\nrecord because it is ignored in updates.\n\nWhen registering a beacon that broadcasts Eddystone-EID, this field\nshould contain a \"stable\" Eddystone-UID that identifies the beacon and\nlinks it to its attachments. The stable Eddystone-UID is only used for\nadministering the beacon.", + "$ref": "AdvertisedId" + }, + "ephemeralIdRegistration": { + "$ref": "EphemeralIdRegistration", + "description": "Write-only registration parameters for beacons using Eddystone-EID\n(remotely resolved ephemeral ID) format. This information will not be\npopulated in API responses. When submitting this data, the `advertised_id`\nfield must contain an ID of type Eddystone-UID. Any other ID type will\nresult in an error." }, "provisioningKey": { "format": "byte", "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.", "type": "string" }, - "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" - }, "latLng": { "$ref": "LatLng", "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional." }, - "placeId": { - "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", - "type": "string" - }, "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" + }, "properties": { "additionalProperties": { "type": "string" }, "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.", "type": "object" + }, + "indoorLevel": { + "$ref": "IndoorLevel", + "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional." + }, + "status": { + "enumDescriptions": [ + "Do not use this value.", + "The \"normal\" in-use state of a beacon.", + "Beacon should no longer be used for any purpose. This is irreversible.", + "The beacon should not be visible to mobile devices. This is reversible." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "ACTIVE", + "DECOMMISSIONED", + "INACTIVE" + ], + "description": "Current status of the beacon.\nRequired.", + "type": "string" } }, - "id": "Beacon" + "id": "Beacon", + "description": "Details of a beacon device." }, "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", @@ -1057,90 +1125,22 @@ "IBEACON", "ALTBEACON", "EDDYSTONE_EID" - ] + ], + "description": "Specifies the identifier type.\nRequired.", + "type": "string" }, "id": { + "type": "string", "format": "byte", - "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.", - "type": "string" + "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." } }, "id": "AdvertisedId" - }, - "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": { - "day": { - "format": "int32", - "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.", - "type": "integer" - }, - "year": { - "format": "int32", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "type": "integer" - }, - "month": { - "type": "integer", - "format": "int32", - "description": "Month of year. Must be from 1 to 12." - } - }, - "id": "Date" - }, - "IndoorLevel": { - "type": "object", - "properties": { - "name": { - "description": "The name of this level.", - "type": "string" - } - }, - "id": "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." - }, - "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.", - "items": { - "$ref": "Namespace" - }, - "type": "array" - } - }, - "id": "ListNamespacesResponse" } }, "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": "v1beta1", - "baseUrl": "https://proximitybeacon.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/userlocation.beacon.registry": { - "description": "View and modify your beacons" - } - } - } - }, - "servicePath": "", - "description": "Registers, manages, indexes, and searches beacons.", - "kind": "discovery#restDescription", - "rootUrl": "https://proximitybeacon.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "proximitybeacon", - "batchPath": "batch", - "revision": "20170717", - "documentationLink": "https://developers.google.com/beacons/proximity/", - "id": "proximitybeacon:v1beta1", - "title": "Google Proximity Beacon API" + } } diff --git a/DiscoveryJson/pubsub_v1.json b/DiscoveryJson/pubsub_v1.json index 7530ec7b4b..94f856038e 100644 --- a/DiscoveryJson/pubsub_v1.json +++ b/DiscoveryJson/pubsub_v1.json @@ -1,5 +1,4 @@ { - "baseUrl": "https://pubsub.googleapis.com/", "canonicalName": "Pubsub", "auth": { "oauth2": { @@ -13,16 +12,16 @@ } } }, + "servicePath": "", "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", "batchPath": "batch", - "id": "pubsub:v1", "documentationLink": "https://cloud.google.com/pubsub/docs", + "id": "pubsub:v1", "revision": "20170630", "title": "Google Cloud Pub/Sub API", "ownerName": "Google", @@ -30,66 +29,26 @@ "resources": { "projects": { "resources": { - "topics": { - "resources": { - "subscriptions": { - "methods": { - "list": { - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageSize": { - "format": "int32", - "description": "Maximum number of subscription names to return.", - "type": "integer", - "location": "query" - }, - "topic": { - "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions", - "id": "pubsub.projects.topics.subscriptions.list", - "path": "v1/{+topic}/subscriptions", - "description": "Lists the name of the subscriptions for this topic." - } - } - } - }, + "snapshots": { "methods": { - "get": { - "description": "Gets the configuration of a topic.", - "httpMethod": "GET", - "response": { - "$ref": "Topic" + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" }, + "httpMethod": "POST", "parameterOrder": [ - "topic" + "resource" ], + "response": { + "$ref": "Policy" + }, "parameters": { - "topic": { - "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", "location": "path" } }, @@ -97,120 +56,112 @@ "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" + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "pubsub.projects.snapshots.setIamPolicy" }, - "publish": { - "response": { - "$ref": "PublishResponse" + "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.", + "httpMethod": "POST", "parameterOrder": [ - "topic" + "resource" ], - "httpMethod": "POST", + "response": { + "$ref": "TestIamPermissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { - "location": "path", - "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.", + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", - "id": "pubsub.projects.topics.publish", - "path": "v1/{+topic}: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": { - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions", - "id": "pubsub.projects.topics.testIamPermissions", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}: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" - }, + "id": "pubsub.projects.snapshots.testIamPermissions" + }, + "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", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], "parameters": { "resource": { + "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 is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - }, - "delete": { - "response": { - "$ref": "Empty" + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "pubsub.projects.snapshots.getIamPolicy" + } + } + }, + "subscriptions": { + "methods": { + "modifyPushConfig": { + "request": { + "$ref": "ModifyPushConfigRequest" }, + "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.", + "httpMethod": "POST", "parameterOrder": [ - "topic" + "subscription" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { - "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", + "subscription": { + "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", - "id": "pubsub.projects.topics.delete", - "path": "v1/{+topic}", - "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`." + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", + "path": "v1/{+subscription}:modifyPushConfig", + "id": "pubsub.projects.subscriptions.modifyPushConfig" }, - "list": { - "description": "Lists matching topics.", + "delete": { "response": { - "$ref": "ListTopicsResponse" + "$ref": "Empty" }, "parameterOrder": [ - "project" + "subscription" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "parameters": { - "pageToken": { - "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "format": "int32", - "description": "Maximum number of topics to return.", - "type": "integer", - "location": "query" - }, - "project": { - "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", + "subscription": { + "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+$", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path" } }, @@ -218,58 +169,24 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/topics", - "id": "pubsub.projects.topics.list", - "path": "v1/{+project}/topics" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "id": "pubsub.projects.subscriptions.delete", + "path": "v1/{+subscription}", + "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." }, - "create": { - "id": "pubsub.projects.topics.create", - "path": "v1/{+name}", - "request": { - "$ref": "Topic" - }, - "description": "Creates the given topic with the given name.", - "response": { - "$ref": "Topic" - }, + "pull": { + "httpMethod": "POST", "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" + "subscription" ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}" - }, - "setIamPolicy": { - "id": "pubsub.projects.topics.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, "response": { - "$ref": "Policy" + "$ref": "PullResponse" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "parameters": { - "resource": { - "pattern": "^projects/[^/]+/topics/[^/]+$", + "subscription": { + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", "type": "string", "required": true } @@ -278,168 +195,85 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:setIamPolicy" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", + "path": "v1/{+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" + } }, - "getIamPolicy": { - "httpMethod": "GET", + "list": { "parameterOrder": [ - "resource" + "project" ], + "httpMethod": "GET", "response": { - "$ref": "Policy" + "$ref": "ListSubscriptionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "pubsub.projects.topics.getIamPolicy", - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." - } - } - }, - "snapshots": { - "methods": { - "getIamPolicy": { - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "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", + "format": "int32", + "description": "Maximum number of subscriptions to return.", + "type": "integer" + }, + "project": { + "pattern": "^projects/[^/]+$", "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": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.", + "type": "string", + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}: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." + "flatPath": "v1/projects/{projectsId}/subscriptions", + "id": "pubsub.projects.subscriptions.list", + "path": "v1/{+project}/subscriptions", + "description": "Lists matching subscriptions." }, "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { "$ref": "SetIamPolicyRequest" }, - "response": { - "$ref": "Policy" - }, + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } + "response": { + "$ref": "Policy" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy", - "id": "pubsub.projects.snapshots.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" - }, - "testIamPermissions": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { "resource": { + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/snapshots/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissions", - "id": "pubsub.projects.snapshots.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST" - } - } - }, - "subscriptions": { - "methods": { - "list": { - "description": "Lists matching subscriptions.", - "httpMethod": "GET", - "parameterOrder": [ - "project" - ], - "response": { - "$ref": "ListSubscriptionsResponse" - }, - "parameters": { - "pageToken": { - "type": "string", - "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." - }, - "pageSize": { - "format": "int32", - "description": "Maximum number of subscriptions to return.", - "type": "integer", - "location": "query" - }, - "project": { - "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.", + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions", - "path": "v1/{+project}/subscriptions", - "id": "pubsub.projects.subscriptions.list" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "pubsub.projects.subscriptions.setIamPolicy" }, "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": "Subscription" }, - "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/overview#names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.", "httpMethod": "PUT", "parameterOrder": [ "name" @@ -447,80 +281,48 @@ "response": { "$ref": "Subscription" }, - "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\"`.", "type": "string", - "required": true + "required": true, + "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}", "path": "v1/{+name}", "id": "pubsub.projects.subscriptions.create" }, - "setIamPolicy": { + "getIamPolicy": { "response": { "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], + "httpMethod": "GET", "parameters": { "resource": { "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true } }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." - }, - "acknowledge": { - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "subscription": { - "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "type": "string", - "required": true, - "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", - "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" - } + "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." }, "modifyAckDeadline": { "response": { @@ -530,10 +332,6 @@ "subscription" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { "subscription": { "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", @@ -543,45 +341,48 @@ "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", "id": "pubsub.projects.subscriptions.modifyAckDeadline", "path": "v1/{+subscription}:modifyAckDeadline", + "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.", "request": { "$ref": "ModifyAckDeadlineRequest" - }, - "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." + } }, - "getIamPolicy": { - "httpMethod": "GET", + "acknowledge": { + "httpMethod": "POST", "parameterOrder": [ - "resource" + "subscription" ], "response": { - "$ref": "Policy" + "$ref": "Empty" }, "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true, + "subscription": { "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "location": "path", + "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}: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." + "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": { - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.get", - "path": "v1/{+subscription}", - "description": "Gets the configuration details of a subscription.", "response": { "$ref": "Subscription" }, @@ -591,90 +392,153 @@ "httpMethod": "GET", "parameters": { "subscription": { + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "required": true } }, "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." }, "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", + "path": "v1/{+resource}:testIamPermissions", "request": { "$ref": "TestIamPermissionsRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], + "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/pubsub" + ], "parameters": { "resource": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "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.", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions" + } + } + }, + "topics": { + "methods": { + "create": { + "path": "v1/{+name}", + "id": "pubsub.projects.topics.create", + "description": "Creates the given topic with the given name.", + "request": { + "$ref": "Topic" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Topic" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", + "type": "string", + "required": true } }, "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" + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}" }, - "modifyPushConfig": { + "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" + }, "httpMethod": "POST", "parameterOrder": [ - "subscription" + "resource" ], "response": { - "$ref": "Empty" + "$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.", + "type": "string", + "required": true, + "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}: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": { - "subscription": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "resource": { + "pattern": "^projects/[^/]+/topics/[^/]+$", "location": "path", - "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true } }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", - "path": "v1/{+subscription}:modifyPushConfig", - "id": "pubsub.projects.subscriptions.modifyPushConfig", - "request": { - "$ref": "ModifyPushConfigRequest" - }, - "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", + "id": "pubsub.projects.topics.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy" }, - "pull": { + "get": { + "httpMethod": "GET", "response": { - "$ref": "PullResponse" + "$ref": "Topic" }, "parameterOrder": [ - "subscription" + "topic" ], - "httpMethod": "POST", "parameters": { - "subscription": { - "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "topic": { + "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "pattern": "^projects/[^/]+/topics/[^/]+$", "location": "path" } }, @@ -682,20 +546,75 @@ "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.", + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "path": "v1/{+topic}", + "id": "pubsub.projects.topics.get", + "description": "Gets the configuration of a topic." + }, + "publish": { + "response": { + "$ref": "PublishResponse" + }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "POST", + "parameters": { + "topic": { + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", + "id": "pubsub.projects.topics.publish", + "path": "v1/{+topic}:publish", + "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": "PullRequest" + "$ref": "PublishRequest" } }, + "testIamPermissions": { + "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/[^/]+/topics/[^/]+$", + "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.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions", + "id": "pubsub.projects.topics.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning." + }, "delete": { "response": { "$ref": "Empty" }, "parameterOrder": [ - "subscription" + "topic" ], "httpMethod": "DELETE", "scopes": [ @@ -703,18 +622,98 @@ "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "subscription": { - "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "topic": { + "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "pattern": "^projects/[^/]+/topics/[^/]+$", "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.delete", - "path": "v1/{+subscription}", - "description": "Deletes an existing subscription. All messages retained in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription or its topic unless the same topic is specified." + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "id": "pubsub.projects.topics.delete", + "path": "v1/{+topic}", + "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`." + }, + "list": { + "path": "v1/{+project}/topics", + "id": "pubsub.projects.topics.list", + "description": "Lists matching topics.", + "httpMethod": "GET", + "response": { + "$ref": "ListTopicsResponse" + }, + "parameterOrder": [ + "project" + ], + "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 `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", + "format": "int32", + "description": "Maximum number of topics to return.", + "type": "integer" + }, + "project": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/topics" + } + }, + "resources": { + "subscriptions": { + "methods": { + "list": { + "path": "v1/{+topic}/subscriptions", + "id": "pubsub.projects.topics.subscriptions.list", + "description": "Lists the name of the subscriptions for this topic.", + "httpMethod": "GET", + "parameterOrder": [ + "topic" + ], + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "parameters": { + "pageToken": { + "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", + "type": "string", + "location": "query" + }, + "pageSize": { + "format": "int32", + "description": "Maximum number of subscription names to return.", + "type": "integer", + "location": "query" + }, + "topic": { + "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions" + } + } } } } @@ -722,8 +721,35 @@ } }, "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": { - "default": "json", "enum": [ "json", "media", @@ -736,22 +762,23 @@ "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response." + "description": "Data format for response.", + "default": "json" }, - "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": { - "description": "API key. 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" }, "pp": { "location": "query", @@ -759,57 +786,172 @@ "default": "true", "type": "boolean" }, - "bearer_token": { - "description": "OAuth bearer token.", + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", "type": "string", "location": "query" }, - "oauth_token": { + "bearer_token": { "location": "query", - "description": "OAuth 2.0 token for the current user.", + "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": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" + } + }, + "schemas": { + "ModifyAckDeadlineRequest": { + "properties": { + "ackDeadlineSeconds": { + "format": "int32", + "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).", + "type": "integer" + }, + "ackIds": { + "description": "List of acknowledgment IDs.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "ModifyAckDeadlineRequest", + "description": "Request for the ModifyAckDeadline method.", + "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" + }, + "ModifyPushConfigRequest": { + "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", + "description": "Request for the ModifyPushConfig method.", + "type": "object" + }, + "PubsubMessage": { + "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", + "type": "object", + "properties": { + "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" + }, + "attributes": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional attributes for this message.", + "type": "object" + }, + "publishTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "data": { + "format": "byte", + "description": "The message payload.", + "type": "string" + } + }, + "id": "PubsubMessage" + }, + "Binding": { + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + } + }, + "id": "Binding", + "description": "Associates `members` with a `role`.", + "type": "object" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "location": "query" + "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" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "AcknowledgeRequest": { + "properties": { + "ackIds": { + "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "AcknowledgeRequest", + "description": "Request for the Acknowledge method.", + "type": "object" }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "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.", + "items": { + "$ref": "Topic" + }, + "type": "array" + } + }, + "id": "ListTopicsResponse" }, - "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] + "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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "ListTopicSubscriptionsResponse" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - } - }, - "schemas": { "PullResponse": { "description": "Response for the `Pull` method.", "type": "object", @@ -825,21 +967,23 @@ "id": "PullResponse" }, "ReceivedMessage": { + "description": "A message and its corresponding acknowledgment ID.", + "type": "object", "properties": { "message": { - "$ref": "PubsubMessage", - "description": "The message." + "description": "The message.", + "$ref": "PubsubMessage" }, "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" + "id": "ReceivedMessage" }, "PushConfig": { + "description": "Configuration for a push delivery endpoint.", + "type": "object", "properties": { "attributes": { "additionalProperties": { @@ -849,13 +993,11 @@ "type": "object" }, "pushEndpoint": { - "type": "string", - "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\"." + "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".", + "type": "string" } }, - "id": "PushConfig", - "description": "Configuration for a push delivery endpoint.", - "type": "object" + "id": "PushConfig" }, "TestIamPermissionsResponse": { "description": "Response message for `TestIamPermissions` method.", @@ -872,24 +1014,22 @@ "id": "TestIamPermissionsResponse" }, "PullRequest": { - "description": "Request for the `Pull` method.", - "type": "object", "properties": { "maxMessages": { - "type": "integer", "format": "int32", - "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified." + "description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.", + "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" + "id": "PullRequest", + "description": "Request for the `Pull` 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.", @@ -903,11 +1043,11 @@ "type": "array" } }, - "id": "ListSubscriptionsResponse" + "id": "ListSubscriptionsResponse", + "description": "Response for the `ListSubscriptions` method.", + "type": "object" }, "PublishRequest": { - "description": "Request for the Publish method.", - "type": "object", "properties": { "messages": { "description": "The messages to publish.", @@ -917,7 +1057,9 @@ "type": "array" } }, - "id": "PublishRequest" + "id": "PublishRequest", + "description": "Request for the Publish method.", + "type": "object" }, "PublishResponse": { "description": "Response for the `Publish` method.", @@ -947,8 +1089,8 @@ "type": "string" }, "topic": { - "type": "string", - "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." + "description": "The name of the topic from which this subscription is receiving messages.\nFormat is `projects/{project}/topics/{topic}`.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", + "type": "string" }, "pushConfig": { "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods.", @@ -971,17 +1113,6 @@ "description": "Request message for `TestIamPermissions` method.", "type": "object" }, - "Topic": { - "description": "A topic resource.", - "type": "object", - "properties": { - "name": { - "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.", - "type": "string" - } - }, - "id": "Topic" - }, "Policy": { "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", @@ -1006,154 +1137,23 @@ }, "id": "Policy" }, - "ModifyAckDeadlineRequest": { - "description": "Request for the ModifyAckDeadline method.", - "type": "object", - "properties": { - "ackDeadlineSeconds": { - "format": "int32", - "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).", - "type": "integer" - }, - "ackIds": { - "description": "List of acknowledgment IDs.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "ModifyAckDeadlineRequest" - }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", - "type": "object", - "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them." - } - }, - "id": "SetIamPolicyRequest" - }, - "ModifyPushConfigRequest": { - "id": "ModifyPushConfigRequest", - "description": "Request for the ModifyPushConfig method.", - "type": "object", - "properties": { - "pushConfig": { - "$ref": "PushConfig", - "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called." - } - } - }, - "PubsubMessage": { - "id": "PubsubMessage", - "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", - "type": "object", - "properties": { - "data": { - "format": "byte", - "description": "The message payload.", - "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" - }, - "attributes": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional attributes for this message.", - "type": "object" - }, - "publishTime": { - "format": "google-datetime", - "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.", - "type": "string" - } - } - }, - "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", - "items": { - "type": "string" - }, - "type": "array" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - } - }, - "ListTopicsResponse": { - "id": "ListTopicsResponse", - "description": "Response for the `ListTopics` method.", + "Topic": { + "description": "A topic resource.", "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`.", + "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" - }, - "topics": { - "description": "The resulting topics.", - "items": { - "$ref": "Topic" - }, - "type": "array" - } - } - }, - "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": {} - }, - "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.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "AcknowledgeRequest" - }, - "ListTopicSubscriptionsResponse": { - "description": "Response for the `ListTopicSubscriptions` method.", - "type": "object", - "properties": { - "subscriptions": { - "description": "The names of the subscriptions that match the request.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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." } }, - "id": "ListTopicSubscriptionsResponse" + "id": "Topic" } }, "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": "v1" + "version": "v1", + "baseUrl": "https://pubsub.googleapis.com/" } diff --git a/DiscoveryJson/pubsub_v1beta1a.json b/DiscoveryJson/pubsub_v1beta1a.json index 84d7bac7b1..7fbad6e575 100644 --- a/DiscoveryJson/pubsub_v1beta1a.json +++ b/DiscoveryJson/pubsub_v1beta1a.json @@ -1,134 +1,232 @@ { - "rootUrl": "https://pubsub.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "pubsub", - "batchPath": "batch", - "revision": "20170630", - "documentationLink": "https://cloud.google.com/pubsub/docs", - "id": "pubsub:v1beta1a", - "title": "Google Cloud Pub/Sub API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { - "subscriptions": { + "topics": { "methods": { - "pullBatch": { + "delete": { + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "parameters": { + "topic": { + "type": "string", + "required": true, + "pattern": "^.+$", + "location": "path", + "description": "Name of the topic to delete." + } + } + }, + "publishBatch": { "httpMethod": "POST", "parameterOrder": [], "response": { - "$ref": "PullBatchResponse" + "$ref": "PublishBatchResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": {}, - "flatPath": "v1beta1a/subscriptions/pullBatch", - "path": "v1beta1a/subscriptions/pullBatch", - "id": "pubsub.subscriptions.pullBatch", + "flatPath": "v1beta1a/topics/publishBatch", + "path": "v1beta1a/topics/publishBatch", + "id": "pubsub.topics.publishBatch", "request": { - "$ref": "PullBatchRequest" + "$ref": "PublishBatchRequest" }, - "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." + "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist." }, - "get": { + "list": { + "description": "Lists matching topics.", + "response": { + "$ref": "ListTopicsResponse" + }, + "parameterOrder": [], "httpMethod": "GET", - "parameterOrder": [ - "subscription" + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation." + }, + "maxResults": { + "location": "query", + "format": "int32", + "description": "Maximum number of topics to return.", + "type": "integer" + }, + "query": { + "location": "query", + "description": "A valid label query expression.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" ], + "flatPath": "v1beta1a/topics", + "id": "pubsub.topics.list", + "path": "v1beta1a/topics" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "Subscription" + "$ref": "Topic" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "parameters": {}, + "flatPath": "v1beta1a/topics", + "path": "v1beta1a/topics", + "id": "pubsub.topics.create", + "request": { + "$ref": "Topic" + }, + "description": "Creates the given topic with the given name." + }, + "get": { "parameters": { - "subscription": { - "description": "The name of the subscription to get.", - "type": "string", - "required": true, + "topic": { "pattern": "^.+$", - "location": "path" + "location": "path", + "description": "The name of the topic to get.", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", - "path": "v1beta1a/subscriptions/{+subscription}", - "id": "pubsub.subscriptions.get", - "description": "Gets the configuration details of a subscription." + "flatPath": "v1beta1a/topics/{topicsId}", + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "topic" + ], + "response": { + "$ref": "Topic" + } }, + "publish": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Empty" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta1a/topics/publish", + "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": "PublishRequest" + } + } + } + }, + "subscriptions": { + "methods": { "modifyPushConfig": { + "flatPath": "v1beta1a/subscriptions/modifyPushConfig", + "path": "v1beta1a/subscriptions/modifyPushConfig", + "id": "pubsub.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" }, + "httpMethod": "POST", + "parameterOrder": [], "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", - "id": "pubsub.subscriptions.modifyPushConfig", - "path": "v1beta1a/subscriptions/modifyPushConfig" + ] }, "pull": { - "httpMethod": "POST", - "parameterOrder": [], + "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" + }, "response": { "$ref": "PullResponse" }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "parameters": {}, "flatPath": "v1beta1a/subscriptions/pull", - "path": "v1beta1a/subscriptions/pull", "id": "pubsub.subscriptions.pull", - "request": { - "$ref": "PullRequest" - }, - "description": "Pulls a single message from the server.\nIf return_immediately is true, and no messages are available in the\nsubscription, this method returns FAILED_PRECONDITION. The system is free\nto return an UNAVAILABLE error if no messages are available in a\nreasonable amount of time (to reduce system load)." + "path": "v1beta1a/subscriptions/pull" }, "delete": { - "id": "pubsub.subscriptions.delete", - "path": "v1beta1a/subscriptions/{+subscription}", - "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": "Empty" - }, + "httpMethod": "DELETE", "parameterOrder": [ "subscription" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { "subscription": { + "pattern": "^.+$", "location": "path", "description": "The subscription to delete.", "type": "string", - "required": true, - "pattern": "^.+$" + "required": true } }, - "flatPath": "v1beta1a/subscriptions/{subscriptionsId}" + "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." }, "list": { + "id": "pubsub.subscriptions.list", + "path": "v1beta1a/subscriptions", "description": "Lists matching subscriptions.", - "httpMethod": "GET", - "parameterOrder": [], "response": { "$ref": "ListSubscriptionsResponse" }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], "parameters": { "pageToken": { "location": "query", @@ -142,20 +240,18 @@ "location": "query" }, "query": { + "description": "A valid label query expression.", "type": "string", - "location": "query", - "description": "A valid label query expression." + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/subscriptions", - "path": "v1beta1a/subscriptions", - "id": "pubsub.subscriptions.list" + "flatPath": "v1beta1a/subscriptions" }, "create": { + "request": { + "$ref": "Subscription" + }, + "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.", "response": { "$ref": "Subscription" }, @@ -168,32 +264,33 @@ "parameters": {}, "flatPath": "v1beta1a/subscriptions", "id": "pubsub.subscriptions.create", - "path": "v1beta1a/subscriptions", - "request": { - "$ref": "Subscription" - }, - "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." + "path": "v1beta1a/subscriptions" }, "acknowledge": { + "httpMethod": "POST", + "parameterOrder": [], "response": { "$ref": "Empty" }, - "parameterOrder": [], - "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "parameters": {}, "flatPath": "v1beta1a/subscriptions/acknowledge", - "id": "pubsub.subscriptions.acknowledge", "path": "v1beta1a/subscriptions/acknowledge", + "id": "pubsub.subscriptions.acknowledge", + "description": "Acknowledges a particular received message: the Pub/Sub system can remove\nthe given message from the subscription. Acknowledging a message whose\nAck deadline has expired may succeed, but the message could have been\nalready redelivered. Acknowledging a message more than once will not\nresult in an error. This is only used for messages received via pull.", "request": { "$ref": "AcknowledgeRequest" - }, - "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." + } }, "modifyAckDeadline": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -205,147 +302,43 @@ "description": "Modifies the Ack deadline for a message received from a pull request.", "request": { "$ref": "ModifyAckDeadlineRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [], - "httpMethod": "POST" - } - } - }, - "topics": { - "methods": { + } + }, "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": "Topic" - }, - "parameterOrder": [ - "topic" - ], + "description": "Gets the configuration details of a subscription.", "httpMethod": "GET", - "parameters": { - "topic": { - "pattern": "^.+$", - "location": "path", - "description": "The name of the topic to get.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" + "parameterOrder": [ + "subscription" ], - "flatPath": "v1beta1a/topics/{topicsId}", - "id": "pubsub.topics.get", - "path": "v1beta1a/topics/{+topic}" - }, - "publish": { - "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.", - "request": { - "$ref": "PublishRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], "response": { - "$ref": "Empty" + "$ref": "Subscription" }, - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/topics/publish", - "path": "v1beta1a/topics/publish", - "id": "pubsub.topics.publish" - }, - "delete": { - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "DELETE", "parameters": { - "topic": { - "description": "Name of the topic to delete.", + "subscription": { + "description": "The name of the subscription to get.", "type": "string", "required": true, "pattern": "^.+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - }, - "publishBatch": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": {}, - "flatPath": "v1beta1a/topics/publishBatch", - "id": "pubsub.topics.publishBatch", - "path": "v1beta1a/topics/publishBatch", - "request": { - "$ref": "PublishBatchRequest" - }, - "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.", - "response": { - "$ref": "PublishBatchResponse" - }, - "parameterOrder": [], - "httpMethod": "POST" - }, - "list": { - "description": "Lists matching topics.", - "response": { - "$ref": "ListTopicsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.", - "type": "string" - }, - "maxResults": { - "type": "integer", - "location": "query", - "format": "int32", - "description": "Maximum number of topics to return." - }, - "query": { - "description": "A valid label query expression.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics", - "id": "pubsub.topics.list", - "path": "v1beta1a/topics" + "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", + "path": "v1beta1a/subscriptions/{+subscription}", + "id": "pubsub.subscriptions.get" }, - "create": { + "pullBatch": { + "id": "pubsub.subscriptions.pullBatch", + "path": "v1beta1a/subscriptions/pullBatch", "request": { - "$ref": "Topic" + "$ref": "PullBatchRequest" }, - "description": "Creates the given topic with the given name.", + "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The system is free to return UNAVAILABLE\nif there are too many pull requests outstanding for the given subscription.", "response": { - "$ref": "Topic" + "$ref": "PullBatchResponse" }, "parameterOrder": [], "httpMethod": "POST", @@ -354,9 +347,7 @@ "https://www.googleapis.com/auth/pubsub" ], "parameters": {}, - "flatPath": "v1beta1a/topics", - "id": "pubsub.topics.create", - "path": "v1beta1a/topics" + "flatPath": "v1beta1a/subscriptions/pullBatch" } } } @@ -368,25 +359,25 @@ "type": "string" }, "pp": { - "description": "Pretty-print response.", "default": "true", "type": "boolean", - "location": "query" + "location": "query", + "description": "Pretty-print response." }, "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", - "location": "query" + "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "prettyPrint": { "location": "query", @@ -395,9 +386,9 @@ "type": "boolean" }, "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\")." }, "fields": { "description": "Selector specifying which fields to include in a partial response.", @@ -410,22 +401,19 @@ "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" - ] + "type": "string" }, "alt": { - "location": "query", - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -436,39 +424,114 @@ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" - ] + ], + "location": "query", + "description": "Data format for response.", + "default": "json" }, "key": { "location": "query", "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", "type": "string" }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." - } - }, - "schemas": { + "access_token": { + "location": "query", + "description": "OAuth access token.", + "type": "string" + } + }, + "schemas": { + "Label": { + "id": "Label", + "description": "A key-value pair applied to a given object.", + "type": "object", + "properties": { + "numValue": { + "format": "int64", + "description": "An integer value.", + "type": "string" + }, + "key": { + "description": "The key of a label is a syntactically valid URL (as per RFC 1738) with\nthe \"scheme\" and initial slashes omitted and with the additional\nrestrictions noted below. Each key should be globally unique. The\n\"host\" portion is called the \"namespace\" and is not necessarily\nresolvable to a network endpoint. Instead, the namespace indicates what\nsystem or entity defines the semantics of the label. Namespaces do not\nrestrict the set of objects to which a label may be associated.\n\nKeys are defined by the following grammar:\n\n key = hostname \"/\" kpath\n kpath = ksegment *[ \"/\" ksegment ]\n ksegment = alphadigit | *[ alphadigit | \"-\" | \"_\" | \".\" ]\n\nwhere \"hostname\" and \"alphadigit\" are defined as in RFC 1738.\n\nExample key:\n spanner.google.com/universe", + "type": "string" + }, + "strValue": { + "description": "A string value.", + "type": "string" + } + } + }, + "ModifyAckDeadlineRequest": { + "description": "Request for the ModifyAckDeadline method.", + "type": "object", + "properties": { + "ackId": { + "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.", + "type": "string" + }, + "ackDeadlineSeconds": { + "format": "int32", + "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.", + "type": "integer" + }, + "ackIds": { + "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subscription": { + "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled.", + "type": "string" + } + }, + "id": "ModifyAckDeadlineRequest" + }, + "PullBatchRequest": { + "id": "PullBatchRequest", + "description": "Request for the PullBatch method.", + "type": "object", + "properties": { + "maxEvents": { + "format": "int32", + "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.", + "type": "integer" + }, + "subscription": { + "description": "The subscription from which messages should be pulled.", + "type": "string" + }, + "returnImmediately": { + "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.", + "type": "boolean" + } + } + }, "ModifyPushConfigRequest": { - "description": "Request for the ModifyPushConfig method.", "type": "object", "properties": { "pushConfig": { - "$ref": "PushConfig", - "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription." + "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription.", + "$ref": "PushConfig" }, "subscription": { "description": "The name of the subscription.", "type": "string" } }, - "id": "ModifyPushConfigRequest" + "id": "ModifyPushConfigRequest", + "description": "Request for the ModifyPushConfig method." }, "PubsubMessage": { "description": "A message data and its labels.", "type": "object", "properties": { + "data": { + "format": "byte", + "description": "The message payload.", + "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" @@ -484,38 +547,16 @@ "$ref": "Label" }, "type": "array" - }, - "data": { - "format": "byte", - "description": "The message payload.", - "type": "string" } }, "id": "PubsubMessage" }, - "PublishBatchRequest": { - "description": "Request for the PublishBatch method.", - "type": "object", - "properties": { - "topic": { - "description": "The messages in the request will be published on this topic.", - "type": "string" - }, - "messages": { - "description": "The messages to publish.", - "items": { - "$ref": "PubsubMessage" - }, - "type": "array" - } - }, - "id": "PublishBatchRequest" - }, "ListTopicsResponse": { + "type": "object", "properties": { "nextPageToken": { - "type": "string", - "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." + "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.", @@ -526,28 +567,25 @@ } }, "id": "ListTopicsResponse", - "description": "Response for the ListTopics method.", - "type": "object" - }, - "Empty": { - "properties": {}, - "id": "Empty", - "description": "An empty message that you can re-use to avoid defining duplicated empty\nmessages in your project. A typical example is to use it as argument or the\nreturn value of a service API. For instance:\n\n service Foo {\n rpc Bar (proto2.Empty) returns (proto2.Empty) { };\n };\n\nBEGIN GOOGLE-INTERNAL\nThe difference between this one and net/rpc/empty-message.proto is that\n1) The generated message here is in proto2 C++ API.\n2) The proto2.Empty has minimum dependencies\n (no message_set or net/rpc dependencies)\nEND GOOGLE-INTERNAL", - "type": "object" + "description": "Response for the ListTopics method." }, - "PullBatchResponse": { - "id": "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.", "items": { - "$ref": "PullResponse" + "$ref": "PubsubMessage" }, "type": "array" + }, + "topic": { + "type": "string", + "description": "The messages in the request will be published on this topic." } - } + }, + "id": "PublishBatchRequest" }, "AcknowledgeRequest": { "type": "object", @@ -567,31 +605,51 @@ "id": "AcknowledgeRequest", "description": "Request for the Acknowledge method." }, + "PullBatchResponse": { + "description": "Response for the PullBatch 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.", + "items": { + "$ref": "PullResponse" + }, + "type": "array" + } + }, + "id": "PullBatchResponse" + }, + "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" + }, "PullResponse": { + "type": "object", "properties": { - "pubsubEvent": { - "$ref": "PubsubEvent", - "description": "A pubsub message or truncation event." - }, "ackId": { "description": "This ID must be used to acknowledge the received event or message.", "type": "string" + }, + "pubsubEvent": { + "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" + "description": "Either a \u003ccode\u003ePubsubMessage\u003c/code\u003e or a truncation event. One of these two\nmust be populated." }, "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" } }, - "id": "PushConfig", - "description": "Configuration for a push delivery endpoint.", - "type": "object" + "id": "PushConfig" }, "PullRequest": { "description": "Request for the Pull method.", @@ -608,36 +666,10 @@ }, "id": "PullRequest" }, - "ListSubscriptionsResponse": { - "id": "ListSubscriptionsResponse", - "description": "Response for the ListSubscriptions method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there are more subscriptions that match the\nrequest and this value should be passed to the next\n\u003ccode\u003eListSubscriptionsRequest\u003c/code\u003e to continue.", - "type": "string" - }, - "subscription": { - "description": "The subscriptions that match the request.", - "items": { - "$ref": "Subscription" - }, - "type": "array" - } - } - }, "PubsubEvent": { "description": "An event indicating a received message or truncation event.", "type": "object", "properties": { - "message": { - "description": "A received message.", - "$ref": "PubsubMessage" - }, - "subscription": { - "description": "The subscription that received the event.", - "type": "string" - }, "deleted": { "description": "Indicates that this subscription has been deleted. (Note that pull\nsubscribers will always receive NOT_FOUND in response in their pull\nrequest on the subscription, rather than seeing this boolean.)", "type": "boolean" @@ -645,51 +677,55 @@ "truncated": { "description": "Indicates that this subscription has been truncated.", "type": "boolean" + }, + "message": { + "$ref": "PubsubMessage", + "description": "A received message." + }, + "subscription": { + "description": "The subscription that received the event.", + "type": "string" } }, "id": "PubsubEvent" }, - "PublishRequest": { - "description": "Request for the Publish method.", - "type": "object", + "ListSubscriptionsResponse": { "properties": { - "topic": { - "description": "The message in the request will be published on this topic.", - "type": "string" + "subscription": { + "description": "The subscriptions that match the request.", + "items": { + "$ref": "Subscription" + }, + "type": "array" }, - "message": { - "description": "The message to publish.", - "$ref": "PubsubMessage" + "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" } }, - "id": "PublishRequest" + "id": "ListSubscriptionsResponse", + "description": "Response for the ListSubscriptions method.", + "type": "object" }, - "PublishBatchResponse": { - "id": "PublishBatchResponse", - "description": "Response for the PublishBatch method.", - "type": "object", + "PublishRequest": { "properties": { - "messageIds": { - "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", - "items": { - "type": "string" - }, - "type": "array" + "message": { + "$ref": "PubsubMessage", + "description": "The message to publish." + }, + "topic": { + "description": "The message in the request will be published on this topic.", + "type": "string" } - } + }, + "id": "PublishRequest", + "description": "Request for the Publish method.", + "type": "object" }, "Subscription": { "description": "A subscription resource.", "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": { "format": "int32", "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).", @@ -698,110 +734,74 @@ "name": { "description": "Name of the subscription.", "type": "string" - } - }, - "id": "Subscription" - }, - "Topic": { - "description": "A topic resource.", - "type": "object", - "properties": { - "name": { - "description": "Name of the topic.", - "type": "string" - } - }, - "id": "Topic" - }, - "Label": { - "description": "A key-value pair applied to a given object.", - "type": "object", - "properties": { - "strValue": { - "description": "A string value.", - "type": "string" }, - "numValue": { - "format": "int64", - "description": "An integer value.", + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.", "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" + "pushConfig": { + "$ref": "PushConfig", + "description": "If push delivery is used with this subscription, this field is\nused to configure it." } }, - "id": "Label" + "id": "Subscription" }, - "ModifyAckDeadlineRequest": { - "id": "ModifyAckDeadlineRequest", - "description": "Request for the ModifyAckDeadline method.", + "PublishBatchResponse": { + "description": "Response for the PublishBatch method.", "type": "object", "properties": { - "ackDeadlineSeconds": { - "format": "int32", - "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.", - "type": "integer" - }, - "ackIds": { - "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.", + "messageIds": { + "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.", "items": { "type": "string" }, "type": "array" - }, - "subscription": { - "type": "string", - "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled." - }, - "ackId": { - "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.", - "type": "string" } - } + }, + "id": "PublishBatchResponse" }, - "PullBatchRequest": { - "description": "Request for the PullBatch method.", + "Topic": { + "description": "A topic resource.", "type": "object", "properties": { - "maxEvents": { - "format": "int32", - "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.", - "type": "integer" - }, - "subscription": { - "type": "string", - "description": "The subscription from which messages should be pulled." - }, - "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" + "name": { + "description": "Name of the topic.", + "type": "string" } }, - "id": "PullBatchRequest" + "id": "Topic" } }, - "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": "v1beta1a", "baseUrl": "https://pubsub.googleapis.com/", "canonicalName": "Pubsub", "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" } } } }, "servicePath": "", + "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", "kind": "discovery#restDescription", - "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n" + "rootUrl": "https://pubsub.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "pubsub", + "batchPath": "batch", + "id": "pubsub:v1beta1a", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "revision": "20170630", + "title": "Google Cloud Pub/Sub API" } diff --git a/DiscoveryJson/pubsub_v1beta2.json b/DiscoveryJson/pubsub_v1beta2.json index 170a9e2fad..c952d5323a 100644 --- a/DiscoveryJson/pubsub_v1beta2.json +++ b/DiscoveryJson/pubsub_v1beta2.json @@ -3,113 +3,82 @@ "ownerDomain": "google.com", "name": "pubsub", "batchPath": "batch", - "id": "pubsub:v1beta2", - "documentationLink": "https://cloud.google.com/pubsub/docs", "revision": "20170630", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "id": "pubsub:v1beta2", "title": "Google Cloud Pub/Sub API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "projects": { "resources": { - "subscriptions": { + "topics": { "methods": { - "setIamPolicy": { - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" + "get": { + "response": { + "$ref": "Topic" }, - "httpMethod": "POST", "parameterOrder": [ - "resource" + "topic" ], - "response": { - "$ref": "Policy" - }, + "httpMethod": "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.", + "topic": { + "location": "path", + "description": "The name of the topic to get.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/topics/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy" + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "id": "pubsub.projects.topics.get", + "path": "v1beta2/{+topic}", + "description": "Gets the configuration of a topic." }, - "create": { - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], + "publish": { "response": { - "$ref": "Subscription" - }, - "parameters": { - "name": { - "type": "string", - "required": true, - "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\"`." - } + "$ref": "PublishResponse" }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "POST", "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", - "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.", - "request": { - "$ref": "Subscription" - } - }, - "getIamPolicy": { - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", - "id": "pubsub.projects.subscriptions.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.", - "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.", + "topic": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The messages in the request will be published on this topic." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", + "id": "pubsub.projects.topics.publish", + "path": "v1beta2/{+topic}: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." }, - "modifyAckDeadline": { - "id": "pubsub.projects.subscriptions.modifyAckDeadline", - "path": "v1beta2/{+subscription}:modifyAckDeadline", + "testIamPermissions": { "request": { - "$ref": "ModifyAckDeadlineRequest" + "$ref": "TestIamPermissionsRequest" }, - "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.", + "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": "Empty" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ - "subscription" + "resource" ], "httpMethod": "POST", "scopes": [ @@ -117,54 +86,50 @@ "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "subscription": { - "location": "path", - "description": "The name of the subscription.", + "resource": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + "pattern": "^projects/[^/]+/topics/[^/]+$", + "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": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline" + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions", + "id": "pubsub.projects.topics.testIamPermissions", + "path": "v1beta2/{+resource}:testIamPermissions" }, - "acknowledge": { + "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": [ - "subscription" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" + "topic" ], + "httpMethod": "DELETE", "parameters": { - "subscription": { - "description": "The subscription whose message is being acknowledged.", + "topic": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "Name of the topic to delete." } }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", - "id": "pubsub.projects.subscriptions.acknowledge", - "path": "v1beta2/{+subscription}:acknowledge", - "request": { - "$ref": "AcknowledgeRequest" - }, - "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." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "id": "pubsub.projects.topics.delete", + "path": "v1beta2/{+topic}" }, - "get": { - "id": "pubsub.projects.subscriptions.get", - "path": "v1beta2/{+subscription}", - "description": "Gets the configuration details of a subscription.", + "list": { "response": { - "$ref": "Subscription" + "$ref": "ListTopicsResponse" }, "parameterOrder": [ - "subscription" + "project" ], "httpMethod": "GET", "scopes": [ @@ -172,381 +137,424 @@ "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "subscription": { - "description": "The name of the subscription to get.", + "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", + "format": "int32", + "description": "Maximum number of topics to return.", + "type": "integer" + }, + "project": { + "location": "path", + "description": "The name of the cloud project that topics belong to.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}" + "flatPath": "v1beta2/projects/{projectsId}/topics", + "id": "pubsub.projects.topics.list", + "path": "v1beta2/{+project}/topics", + "description": "Lists matching topics." }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, + "setIamPolicy": { + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "response": { + "$ref": "Policy" + }, "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "location": "path", + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/topics/[^/]+$" } }, "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.", + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "pubsub.projects.topics.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "SetIamPolicyRequest" } }, - "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" - }, + "create": { "response": { - "$ref": "Empty" + "$ref": "Topic" }, "parameterOrder": [ - "subscription" + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" ], - "httpMethod": "POST", "parameters": { - "subscription": { - "location": "path", - "description": "The name of the subscription.", + "name": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`." } }, - "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" - }, - "delete": { - "response": { - "$ref": "Empty" + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "id": "pubsub.projects.topics.create", + "path": "v1beta2/{+name}", + "request": { + "$ref": "Topic" }, + "description": "Creates the given topic with the given name." + }, + "getIamPolicy": { + "httpMethod": "GET", "parameterOrder": [ - "subscription" + "resource" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Policy" + }, "parameters": { - "subscription": { - "description": "The subscription to delete.", + "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/topics/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.delete", - "path": "v1beta2/{+subscription}", - "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." - }, - "pull": { - "id": "pubsub.projects.subscriptions.pull", - "path": "v1beta2/{+subscription}: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" - }, + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy", + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "pubsub.projects.topics.getIamPolicy", + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset." + } + }, + "resources": { + "subscriptions": { + "methods": { + "list": { + "description": "Lists the name of the subscriptions for this topic.", + "httpMethod": "GET", + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "parameterOrder": [ + "topic" + ], + "parameters": { + "pageToken": { + "type": "string", + "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." + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum number of subscription names to return.", + "type": "integer" + }, + "topic": { + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The name of the topic that subscriptions are attached to." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions", + "path": "v1beta2/{+topic}/subscriptions", + "id": "pubsub.projects.topics.subscriptions.list" + } + } + } + } + }, + "subscriptions": { + "methods": { + "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" + }, "parameterOrder": [ "subscription" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { "subscription": { + "type": "string", + "required": true, "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path", - "description": "The subscription from which messages should be pulled.", - "type": "string", - "required": true + "description": "The subscription whose message is being acknowledged." } }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] }, - "list": { - "httpMethod": "GET", + "modifyAckDeadline": { "response": { - "$ref": "ListSubscriptionsResponse" + "$ref": "Empty" }, "parameterOrder": [ - "project" + "subscription" ], + "httpMethod": "POST", "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": { - "format": "int32", - "description": "Maximum number of subscriptions to return.", - "type": "integer", - "location": "query" - }, - "project": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The name of the cloud project that subscriptions belong to.", + "subscription": { "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "The name of the subscription." } }, "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", - "description": "Lists matching subscriptions." - } - } - }, - "topics": { - "methods": { - "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", + "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" + } + }, + "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": [ - "topic" + "resource" ], "response": { - "$ref": "Empty" + "$ref": "Policy" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { - "topic": { + "resource": { "location": "path", - "description": "Name of the topic to delete.", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "path": "v1beta2/{+topic}", - "id": "pubsub.projects.topics.delete" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "pubsub.projects.subscriptions.getIamPolicy" }, - "list": { + "get": { "httpMethod": "GET", - "parameterOrder": [ - "project" - ], "response": { - "$ref": "ListTopicsResponse" + "$ref": "Subscription" }, + "parameterOrder": [ + "subscription" + ], "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": { - "format": "int32", - "description": "Maximum number of topics to return.", - "type": "integer", - "location": "query" - }, - "project": { - "description": "The name of the cloud project that topics belong to.", + "subscription": { "type": "string", "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "The name of the subscription to get." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta2/projects/{projectsId}/topics", - "path": "v1beta2/{+project}/topics", - "id": "pubsub.projects.topics.list", - "description": "Lists matching topics." + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "path": "v1beta2/{+subscription}", + "id": "pubsub.projects.subscriptions.get", + "description": "Gets the configuration details of a subscription." }, - "setIamPolicy": { - "httpMethod": "POST", + "testIamPermissions": { + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", + "id": "pubsub.projects.subscriptions.testIamPermissions", + "path": "v1beta2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.", + "response": { + "$ref": "TestIamPermissionsResponse" + }, "parameterOrder": [ "resource" ], - "response": { - "$ref": "Policy" - }, + "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 is being specified.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field." } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "pubsub.projects.topics.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" } }, - "create": { - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "path": "v1beta2/{+name}", - "id": "pubsub.projects.topics.create", - "description": "Creates the given topic with the given name.", - "request": { - "$ref": "Topic" - }, - "httpMethod": "PUT", + "modifyPushConfig": { + "httpMethod": "POST", "parameterOrder": [ - "name" + "subscription" ], "response": { - "$ref": "Topic" + "$ref": "Empty" }, "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\"`.", + "subscription": { + "location": "path", + "description": "The name of the subscription.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } }, "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", + "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" + } }, - "getIamPolicy": { + "pull": { "response": { - "$ref": "Policy" + "$ref": "PullResponse" }, "parameterOrder": [ - "resource" + "subscription" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" ], - "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.", + "subscription": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "The subscription from which messages should be pulled." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "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." + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", + "id": "pubsub.projects.subscriptions.pull", + "path": "v1beta2/{+subscription}: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." }, - "get": { - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "id": "pubsub.projects.topics.get", - "path": "v1beta2/{+topic}", - "description": "Gets the configuration of a topic.", + "delete": { + "httpMethod": "DELETE", "response": { - "$ref": "Topic" + "$ref": "Empty" }, "parameterOrder": [ - "topic" + "subscription" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { - "location": "path", - "description": "The name of the topic to get.", + "subscription": { "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "The subscription to delete." } - } - }, - "publish": { - "response": { - "$ref": "PublishResponse" }, + "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." + }, + "list": { + "httpMethod": "GET", "parameterOrder": [ - "topic" + "project" ], - "httpMethod": "POST", + "response": { + "$ref": "ListSubscriptionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { - "pattern": "^projects/[^/]+/topics/[^/]+$", + "pageToken": { + "type": "string", + "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." + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Maximum number of subscriptions to return." + }, + "project": { "location": "path", - "description": "The messages in the request will be published on this topic.", + "description": "The name of the cloud project that subscriptions belong to.", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", - "id": "pubsub.projects.topics.publish", - "path": "v1beta2/{+topic}: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." + "flatPath": "v1beta2/projects/{projectsId}/subscriptions", + "path": "v1beta2/{+project}/subscriptions", + "id": "pubsub.projects.subscriptions.list", + "description": "Lists matching subscriptions." }, - "testIamPermissions": { - "id": "pubsub.projects.topics.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.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, + "setIamPolicy": { "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Policy" }, "parameterOrder": [ "resource" @@ -554,61 +562,53 @@ "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions" - } - }, - "resources": { - "subscriptions": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "topic" - ], - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.", - "type": "string", - "location": "query" - }, - "pageSize": { - "format": "int32", - "description": "Maximum number of subscription names to return.", - "type": "integer", - "location": "query" - }, - "topic": { - "location": "path", - "description": "The name of the topic that subscriptions are attached to.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/topics/[^/]+$" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions", - "path": "v1beta2/{+topic}/subscriptions", - "id": "pubsub.projects.topics.subscriptions.list", - "description": "Lists the name of the subscriptions for this topic." + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "id": "pubsub.projects.subscriptions.setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" + } + }, + "create": { + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "path": "v1beta2/{+name}", + "id": "pubsub.projects.subscriptions.create", + "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic. Note that\nfor REST API requests, you must specify a name.", + "request": { + "$ref": "Subscription" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Subscription" + }, + "parameters": { + "name": { + "location": "path", + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] } } } @@ -616,20 +616,10 @@ } }, "parameters": { - "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" + "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": { "default": "true", @@ -637,16 +627,16 @@ "location": "query", "description": "Pretty-print response." }, - "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": { + "type": "string", + "location": "query", + "description": "OAuth bearer token." + }, "upload_protocol": { "type": "string", "location": "query", @@ -664,8 +654,13 @@ "type": "string" }, "fields": { + "type": "string", + "location": "query", + "description": "Selector specifying which fields to include in a partial response." + }, + "callback": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "description": "JSONP", "type": "string" }, "$.xgafv": { @@ -681,12 +676,8 @@ "v2 error format" ] }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, "alt": { + "location": "query", "description": "Data format for response.", "default": "json", "enum": [ @@ -699,13 +690,105 @@ "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": { + "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." } }, "schemas": { + "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": { + "items": { + "$ref": "Subscription" + }, + "type": "array", + "description": "The subscriptions that match the request." + } + }, + "id": "ListSubscriptionsResponse" + }, + "PublishRequest": { + "type": "object", + "properties": { + "messages": { + "description": "The messages to publish.", + "items": { + "$ref": "PubsubMessage" + }, + "type": "array" + } + }, + "id": "PublishRequest", + "description": "Request for the Publish method." + }, + "PublishResponse": { + "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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "PublishResponse", + "description": "Response for the `Publish` method." + }, + "Subscription": { + "type": "object", + "properties": { + "ackDeadlineSeconds": { + "type": "integer", + "format": "int32", + "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." + }, + "name": { + "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.", + "type": "string" + }, + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.", + "type": "string" + }, + "pushConfig": { + "$ref": "PushConfig", + "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods." + } + }, + "id": "Subscription", + "description": "A subscription resource." + }, + "TestIamPermissionsRequest": { + "type": "object", + "properties": { + "permissions": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions)." + } + }, + "id": "TestIamPermissionsRequest", + "description": "Request message for `TestIamPermissions` method." + }, "Topic": { - "description": "A topic resource.", "type": "object", "properties": { "name": { @@ -713,16 +796,17 @@ "type": "string" } }, - "id": "Topic" + "id": "Topic", + "description": "A topic resource." }, "Policy": { "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { "etag": { + "type": "string", "format": "byte", - "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.", - "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." }, "version": { "format": "int32", @@ -740,30 +824,29 @@ "id": "Policy" }, "ModifyAckDeadlineRequest": { - "description": "Request for the ModifyAckDeadline method.", "type": "object", "properties": { "ackId": { - "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth.", - "type": "string" + "type": "string", + "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth." }, "ackDeadlineSeconds": { + "type": "integer", "format": "int32", - "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.", - "type": "integer" + "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." }, "ackIds": { + "description": "List of acknowledgment IDs.", "items": { "type": "string" }, - "type": "array", - "description": "List of acknowledgment IDs." + "type": "array" } }, - "id": "ModifyAckDeadlineRequest" + "id": "ModifyAckDeadlineRequest", + "description": "Request for the ModifyAckDeadline method." }, "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { "policy": { @@ -771,20 +854,11 @@ "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" - }, - "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" + "id": "SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method." }, "PubsubMessage": { + "type": "object", "properties": { "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.", @@ -803,35 +877,44 @@ "type": "string" }, "data": { - "type": "string", "format": "byte", - "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648)." + "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648).", + "type": "string" } }, "id": "PubsubMessage", - "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.", - "type": "object" + "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": { + "type": "object", + "properties": { + "pushConfig": { + "$ref": "PushConfig", + "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called." + } + }, + "id": "ModifyPushConfigRequest", + "description": "Request for the ModifyPushConfig method." }, "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" + "type": "string", + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired" }, "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { "type": "string" }, - "type": "array" + "type": "array", + "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" } }, - "id": "Binding", - "description": "Associates `members` with a `role`.", - "type": "object" + "id": "Binding" }, "ListTopicsResponse": { - "description": "Response for the `ListTopics` method.", "type": "object", "properties": { "nextPageToken": { @@ -846,67 +929,68 @@ "type": "array" } }, - "id": "ListTopicsResponse" + "id": "ListTopicsResponse", + "description": "Response for the `ListTopics` method." }, "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 `{}`." }, "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.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "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" + "id": "AcknowledgeRequest", + "description": "Request for the Acknowledge method." }, "ListTopicSubscriptionsResponse": { - "description": "Response for the `ListTopicSubscriptions` method.", "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." + }, "subscriptions": { - "description": "The names of the subscriptions that match the request.", "items": { "type": "string" }, - "type": "array" - }, - "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" + "type": "array", + "description": "The names of the subscriptions that match the request." } }, - "id": "ListTopicSubscriptionsResponse" + "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.", "items": { "$ref": "ReceivedMessage" }, - "type": "array" + "type": "array", + "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" + "id": "PullResponse", + "description": "Response for the `Pull` method." }, "ReceivedMessage": { "description": "A message and its corresponding acknowledgment ID.", "type": "object", "properties": { "message": { - "description": "The message.", - "$ref": "PubsubMessage" + "$ref": "PubsubMessage", + "description": "The message." }, "ackId": { "description": "This ID can be used to acknowledge the received message.", @@ -934,7 +1018,6 @@ "id": "PushConfig" }, "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", "type": "object", "properties": { "permissions": { @@ -945,15 +1028,15 @@ "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed." } }, - "id": "TestIamPermissionsResponse" + "id": "TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method." }, "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" + "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." }, "maxMessages": { "format": "int32", @@ -961,98 +1044,15 @@ "type": "integer" } }, - "id": "PullRequest" - }, - "ListSubscriptionsResponse": { - "description": "Response for the `ListSubscriptions` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.", - "type": "string" - }, - "subscriptions": { - "description": "The subscriptions that match the request.", - "items": { - "$ref": "Subscription" - }, - "type": "array" - } - }, - "id": "ListSubscriptionsResponse" - }, - "PublishRequest": { - "type": "object", - "properties": { - "messages": { - "description": "The messages to publish.", - "items": { - "$ref": "PubsubMessage" - }, - "type": "array" - } - }, - "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.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "PublishResponse" - }, - "Subscription": { - "description": "A subscription resource.", - "type": "object", - "properties": { - "topic": { - "type": "string", - "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." - }, - "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": { - "format": "int32", - "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.", - "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" - } - }, - "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).", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsRequest" + "id": "PullRequest", + "description": "Request for the `Pull` 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" }, + "protocol": "rest", "version": "v1beta2", "baseUrl": "https://pubsub.googleapis.com/", "canonicalName": "Pubsub", diff --git a/DiscoveryJson/runtimeconfig_v1.json b/DiscoveryJson/runtimeconfig_v1.json index 13f3cc572a..97c68d1d7b 100644 --- a/DiscoveryJson/runtimeconfig_v1.json +++ b/DiscoveryJson/runtimeconfig_v1.json @@ -1,4 +1,116 @@ { + "schemas": { + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" + }, + "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": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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 will be a\ncommon set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "id": "Status" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" + }, + "metadata": { + "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." + } + } + }, + "id": "Operation" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "id": "ListOperationsResponse" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" + } + }, + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "protocol": "rest", + "canonicalName": "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", @@ -9,59 +121,59 @@ "operations": { "methods": { "cancel": { - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", "id": "runtimeconfig.operations.cancel", + "path": "v1/{+name}:cancel", + "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", "request": { "$ref": "CancelOperationRequest" }, - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" + "parameterOrder": [ + "name" ], + "httpMethod": "POST", "parameters": { "name": { + "location": "path", "description": "The name of the operation resource to be cancelled.", "type": "string", "required": true, - "pattern": "^operations/.+$", - "location": "path" + "pattern": "^operations/.+$" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "flatPath": "v1/operations/{operationsId}:cancel" }, "delete": { - "response": { - "$ref": "Empty" - }, + "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", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "parameters": { "name": { - "pattern": "^operations/.+$", - "location": "path", "description": "The name of the operation resource to be deleted.", "type": "string", - "required": true + "required": true, + "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`." + "flatPath": "v1/operations/{operationsId}" }, "list": { "httpMethod": "GET", @@ -71,11 +183,20 @@ "response": { "$ref": "ListOperationsResponse" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, "pageToken": { - "type": "string", "location": "query", - "description": "The standard list page token." + "description": "The standard list page token.", + "type": "string" }, "name": { "description": "The name of the operation's parent resource.", @@ -89,17 +210,8 @@ "format": "int32", "description": "The standard list page size.", "type": "integer" - }, - "filter": { - "type": "string", - "location": "query", - "description": "The standard list filter." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "flatPath": "v1/operations", "path": "v1/{+name}", "id": "runtimeconfig.operations.list", @@ -109,6 +221,27 @@ } }, "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": { + "description": "Available 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.", + "default": "true", + "type": "boolean" + }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", "type": "string", @@ -120,80 +253,59 @@ "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.", "default": "true", - "type": "boolean" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "boolean", + "location": "query" }, "uploadType": { "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string" }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" + }, "callback": { "description": "JSONP", "type": "string", "location": "query" }, "$.xgafv": { - "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" ], - "location": "query", + "location": "query" + }, + "alt": { "description": "Data format for response.", "default": "json", "enum": [ "json", "media", "proto" - ] - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "access_token": { - "description": "OAuth access token.", + ], "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], "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": { - "default": "true", - "type": "boolean", - "location": "query", - "description": "Pretty-print response." } }, "version": "v1", @@ -202,121 +314,9 @@ "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": "20170620", - "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", "id": "runtimeconfig:v1", + "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", + "revision": "20170620", "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" - }, - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client." - }, - "details": { - "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.", - "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } - }, - "type": "array" - } - }, - "id": "Status" - }, - "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" - }, - "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.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - }, - "id": "ListOperationsResponse" - }, - "Empty": { - "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "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" - } - } - } - } + "version_module": "True" } diff --git a/DiscoveryJson/runtimeconfig_v1beta1.json b/DiscoveryJson/runtimeconfig_v1beta1.json index b26cce08bb..85cb17011f 100644 --- a/DiscoveryJson/runtimeconfig_v1beta1.json +++ b/DiscoveryJson/runtimeconfig_v1beta1.json @@ -1,4 +1,5 @@ { + "batchPath": "batch", "title": "Google Cloud Runtime Configuration API", "ownerName": "Google", "resources": { @@ -6,99 +7,77 @@ "resources": { "configs": { "methods": { - "testIamPermissions": { - "id": "runtimeconfig.projects.configs.testIamPermissions", - "path": "v1beta1/{+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" - }, + "list": { + "description": "Lists all the RuntimeConfig resources within project.", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "ListConfigsResponse" }, "parameterOrder": [ - "resource" + "parent" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { - "resource": { + "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", + "format": "int32", + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", "type": "string", "required": true, - "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." + "pattern": "^projects/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions" + "flatPath": "v1beta1/projects/{projectsId}/configs", + "id": "runtimeconfig.projects.configs.list", + "path": "v1beta1/{+parent}/configs" }, - "delete": { - "description": "Deletes a RuntimeConfig resource.", - "httpMethod": "DELETE", + "setIamPolicy": { "response": { - "$ref": "Empty" + "$ref": "Policy" }, "parameterOrder": [ - "name" + "resource" ], + "httpMethod": "POST", "parameters": { - "name": { - "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/configs/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.delete" - }, - "list": { - "flatPath": "v1beta1/projects/{projectsId}/configs", - "path": "v1beta1/{+parent}/configs", - "id": "runtimeconfig.projects.configs.list", - "description": "Lists all the RuntimeConfig resources within project.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListConfigsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "pageSize": { - "type": "integer", - "location": "query", - "format": "int32", - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements." - }, - "parent": { - "location": "path", - "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - }, - "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" - } + "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" } }, "create": { + "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project.", + "request": { + "$ref": "RuntimeConfig" + }, "response": { "$ref": "RuntimeConfig" }, @@ -106,178 +85,202 @@ "parent" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { "requestId": { + "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", "type": "string", - "location": "query", - "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters." + "location": "query" }, "parent": { - "pattern": "^projects/[^/]+$", "location": "path", "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.", "type": "string", - "required": true + "required": true, + "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", - "request": { - "$ref": "RuntimeConfig" - }, - "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project." + "path": "v1beta1/{+parent}/configs" }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, + "getIamPolicy": { + "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.", "response": { "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "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.", "type": "string", "required": true, "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." + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy", - "id": "runtimeconfig.projects.configs.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy" + ] }, - "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.", "httpMethod": "GET", - "response": { - "$ref": "Policy" - }, "parameterOrder": [ - "resource" + "name" ], + "response": { + "$ref": "RuntimeConfig" + }, "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 is being requested.\nSee the operation documentation for the appropriate value for this field.", + "name": { + "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+$" + "pattern": "^projects/[^/]+/configs/[^/]+$", + "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "id": "runtimeconfig.projects.configs.getIamPolicy" - }, - "get": { "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.get", - "description": "Gets information about a RuntimeConfig resource.", - "httpMethod": "GET", + "id": "runtimeconfig.projects.configs.get" + }, + "update": { "response": { "$ref": "RuntimeConfig" }, "parameterOrder": [ "name" ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], + "httpMethod": "PUT", "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]`", + "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+$", + "location": "path" } - } - }, - "update": { - "request": { - "$ref": "RuntimeConfig" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "id": "runtimeconfig.projects.configs.update", + "path": "v1beta1/{+name}", "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.", - "response": { + "request": { "$ref": "RuntimeConfig" + } + }, + "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.", + "httpMethod": "POST", "parameterOrder": [ - "name" + "resource" ], - "httpMethod": "PUT", + "response": { + "$ref": "TestIamPermissionsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], "parameters": { - "name": { + "resource": { "location": "path", - "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, "pattern": "^projects/[^/]+/configs/[^/]+$" } }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", + "id": "runtimeconfig.projects.configs.testIamPermissions" + }, + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "id": "runtimeconfig.projects.configs.update", - "path": "v1beta1/{+name}" + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.delete", + "description": "Deletes a RuntimeConfig resource." } }, "resources": { - "variables": { + "waiters": { "methods": { - "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.", - "httpMethod": "DELETE", + "get": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.waiters.get", + "description": "Gets information about a single waiter.", + "httpMethod": "GET", "parameterOrder": [ "name" ], "response": { - "$ref": "Empty" + "$ref": "Waiter" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { - "recursive": { - "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.", - "type": "boolean", - "location": "query" - }, "name": { - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", "location": "path", - "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", + "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.variables.delete" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] }, "list": { + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListWaitersResponse" + }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" @@ -290,41 +293,35 @@ "type": "integer" }, "parent": { - "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "type": "string", "required": true, "pattern": "^projects/[^/]+/configs/[^/]+$", "location": "path" }, - "filter": { + "pageToken": { "location": "query", - "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", + "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" - }, - "pageToken": { - "type": "string", - "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." } }, - "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 filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned.", - "httpMethod": "GET", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", + "id": "runtimeconfig.projects.configs.waiters.list", + "path": "v1beta1/{+parent}/waiters", + "description": "List waiters within the given configuration." + }, + "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" ], - "response": { - "$ref": "ListVariablesResponse" - } - }, - "create": { + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" @@ -336,185 +333,171 @@ "location": "query" }, "parent": { + "location": "path", + "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path", - "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`" + "pattern": "^projects/[^/]+/configs/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", - "id": "runtimeconfig.projects.configs.variables.create", - "path": "v1beta1/{+parent}/variables", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", + "id": "runtimeconfig.projects.configs.waiters.create", + "path": "v1beta1/{+parent}/waiters" + }, + "testIamPermissions": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions", + "id": "runtimeconfig.projects.configs.waiters.testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", "request": { - "$ref": "Variable" + "$ref": "TestIamPermissionsRequest" }, - "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.", + "description": "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": "Variable" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ - "parent" + "resource" ], - "httpMethod": "POST" - }, - "watch": { "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Variable" - }, "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]`", + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", "location": "path" } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", - "path": "v1beta1/{+name}:watch", - "id": "runtimeconfig.projects.configs.variables.watch", - "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 timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation." + } }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + "delete": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.waiters.delete", + "description": "Deletes the waiter with the specified name.", + "httpMethod": "DELETE", "response": { - "$ref": "Variable" + "$ref": "Empty" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" + "parameterOrder": [ + "name" ], "parameters": { "name": { - "description": "The name of the variable to return, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`", + "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.variables.get", - "description": "Gets information about a single variable." - }, - "update": { - "request": { - "$ref": "Variable" - }, - "description": "Updates an existing variable with a new value.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + } + } + }, + "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": "Variable" + "$ref": "Operation" }, "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 variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", + "location": "path", + "description": "The name of the operation resource.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "location": "path" + "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "id": "runtimeconfig.projects.configs.variables.update", - "path": "v1beta1/{+name}" + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.operations.get" }, "testIamPermissions": { - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "runtimeconfig.projects.configs.variables.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.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], "response": { "$ref": "TestIamPermissionsResponse" }, + "parameterOrder": [ + "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "location": "path" + "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions" + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions", + "id": "runtimeconfig.projects.configs.operations.testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions" } } }, - "waiters": { + "variables": { "methods": { - "create": { - "httpMethod": "POST", + "get": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.variables.get", + "description": "Gets information about a single variable.", + "httpMethod": "GET", "parameterOrder": [ - "parent" + "name" ], "response": { - "$ref": "Operation" + "$ref": "Variable" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], "parameters": { - "requestId": { - "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.", + "name": { + "description": "The name of the variable to return, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+$" + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", + "location": "path" } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", - "path": "v1beta1/{+parent}/waiters", - "id": "runtimeconfig.projects.configs.waiters.create", + } + }, + "watch": { "request": { - "$ref": "Waiter" + "$ref": "WatchVariableRequest" }, - "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." - }, - "testIamPermissions": { + "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Variable" }, "parameterOrder": [ - "resource" + "name" ], "httpMethod": "POST", "scopes": [ @@ -522,62 +505,95 @@ "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.", + "name": { + "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions", - "id": "runtimeconfig.projects.configs.waiters.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning." + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", + "id": "runtimeconfig.projects.configs.variables.watch", + "path": "v1beta1/{+name}:watch" }, - "delete": { - "id": "runtimeconfig.projects.configs.waiters.delete", + "update": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "id": "runtimeconfig.projects.configs.variables.update", "path": "v1beta1/{+name}", - "description": "Deletes the waiter with the specified name.", + "description": "Updates an existing variable with a new value.", + "request": { + "$ref": "Variable" + }, "response": { - "$ref": "Empty" + "$ref": "Variable" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "httpMethod": "PUT", "parameters": { "name": { - "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", + "location": "path", + "description": "The name of the variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + }, + "testIamPermissions": { + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", + "id": "runtimeconfig.projects.configs.variables.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" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}" + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] }, - "get": { + "delete": { "response": { - "$ref": "Waiter" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "parameters": { + "recursive": { + "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.", + "type": "boolean", + "location": "query" + }, "name": { - "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", + "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`", "type": "string", "required": true, - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", "location": "path" } }, @@ -585,106 +601,91 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", - "id": "runtimeconfig.projects.configs.waiters.get", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "id": "runtimeconfig.projects.configs.variables.delete", "path": "v1beta1/{+name}", - "description": "Gets information about a single waiter." + "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": { + "description": "Lists variables within given a configuration, matching any provided filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned.", "response": { - "$ref": "ListWaitersResponse" + "$ref": "ListVariablesResponse" }, "parameterOrder": [ "parent" ], "httpMethod": "GET", "parameters": { - "parent": { - "type": "string", - "required": true, - "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 by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`" - }, - "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", "format": "int32", "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", - "id": "runtimeconfig.projects.configs.waiters.list", - "path": "v1beta1/{+parent}/waiters", - "description": "List waiters within the given configuration." - } - } - }, - "operations": { - "methods": { - "testIamPermissions": { - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", - "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.", + "type": "integer" + }, + "parent": { + "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+$", + "location": "path" + }, + "filter": { + "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", "type": "string", - "required": true + "location": "query" + }, + "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" + }, + "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", "https://www.googleapis.com/auth/cloudruntimeconfig" ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions", - "id": "runtimeconfig.projects.configs.operations.testIamPermissions", - "path": "v1beta1/{+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.", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", + "id": "runtimeconfig.projects.configs.variables.list", + "path": "v1beta1/{+parent}/variables" + }, + "create": { "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Variable" }, + "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.", + "httpMethod": "POST", "parameterOrder": [ - "resource" + "parent" ], - "httpMethod": "POST" - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", "response": { - "$ref": "Operation" + "$ref": "Variable" }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" ], "parameters": { - "name": { - "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", + "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": { "location": "path", - "description": "The name of the operation resource.", + "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", "type": "string", - "required": true + "required": true, + "pattern": "^projects/[^/]+/configs/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}", - "id": "runtimeconfig.projects.configs.operations.get", - "path": "v1beta1/{+name}" + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", + "path": "v1beta1/{+parent}/variables", + "id": "runtimeconfig.projects.configs.variables.create" } } } @@ -700,20 +701,20 @@ "type": "string" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query" }, "uploadType": { - "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "callback": { "location": "query", @@ -721,19 +722,20 @@ "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" }, "alt": { + "description": "Data format for response.", "default": "json", "enum": [ "json", @@ -746,8 +748,7 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query", - "description": "Data format for response." + "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.", @@ -760,9 +761,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.", @@ -783,9 +784,9 @@ }, "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", + "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": "", "id": "runtimeconfig:v1beta1", "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", @@ -793,41 +794,6 @@ "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": { - "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" - }, "SetIamPolicyRequest": { "description": "Request message for `SetIamPolicy` method.", "type": "object", @@ -843,15 +809,6 @@ "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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 will be a\ncommon set of message types for APIs to use.", "items": { @@ -862,6 +819,15 @@ "type": "object" }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" @@ -870,16 +836,16 @@ "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", "items": { "type": "string" }, "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, "id": "Binding" @@ -907,7 +873,6 @@ "id": "Cardinality" }, "ListConfigsResponse": { - "id": "ListConfigsResponse", "description": "`ListConfigs()` returns the following response. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.", "type": "object", "properties": { @@ -922,15 +887,16 @@ "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": "ListConfigsResponse" }, "EndCondition": { "description": "The condition that a Waiter resource is waiting for.", "type": "object", "properties": { "cardinality": { - "description": "The cardinality of the `EndCondition`.", - "$ref": "Cardinality" + "$ref": "Cardinality", + "description": "The cardinality of the `EndCondition`." } }, "id": "EndCondition" @@ -950,7 +916,6 @@ "id": "TestIamPermissionsResponse" }, "ListVariablesResponse": { - "id": "ListVariablesResponse", "description": "Response for the `ListVariables()` method.", "type": "object", "properties": { @@ -965,9 +930,12 @@ "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" }, "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 RFC 1035 segment specification. The length of\n`[CONFIG_NAME]` must be less than 64 bytes.\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.", @@ -978,55 +946,41 @@ "type": "string" } }, - "id": "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" + "id": "RuntimeConfig" }, "WatchVariableRequest": { - "id": "WatchVariableRequest", "description": "Request for the `WatchVariable()` method.", "type": "object", "properties": { "newerThan": { - "type": "string", "format": "google-datetime", - "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." + "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.", + "type": "string" } - } + }, + "id": "WatchVariableRequest" }, "ListWaitersResponse": { - "id": "ListWaitersResponse", "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary.", "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" - }, "waiters": { "description": "Found waiters in the project.", "items": { "$ref": "Waiter" }, "type": "array" + }, + "nextPageToken": { + "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results", + "type": "string" } - } - }, - "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).", - "items": { - "type": "string" - }, - "type": "array" - } - } + }, + "id": "ListWaitersResponse" }, "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": { "error": { "description": "[Output Only] If the waiter ended due to a failure or timeout, this value\nwill be set.", @@ -1059,15 +1013,52 @@ "type": "string" } }, - "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.", - "type": "object" + "id": "Waiter" + }, + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestIamPermissionsRequest" + }, + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", + "type": "object", + "properties": { + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" + }, + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + } + }, + "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": { "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.", @@ -1078,8 +1069,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." + ] }, "updateTime": { "format": "google-datetime", @@ -1102,34 +1092,45 @@ }, "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**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).", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" + "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" + } }, - "bindings": { - "items": { - "$ref": "Binding" - }, - "type": "array", - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." + "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": "Policy" + "id": "Operation" } }, "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 RuntimeConfig", @@ -1147,6 +1148,5 @@ }, "rootUrl": "https://runtimeconfig.googleapis.com/", "ownerDomain": "google.com", - "name": "runtimeconfig", - "batchPath": "batch" + "name": "runtimeconfig" } diff --git a/DiscoveryJson/safebrowsing_v4.json b/DiscoveryJson/safebrowsing_v4.json index 8228f87185..6088acfe8a 100644 --- a/DiscoveryJson/safebrowsing_v4.json +++ b/DiscoveryJson/safebrowsing_v4.json @@ -1,112 +1,57 @@ { "title": "Google Safe Browsing API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { - "threatListUpdates": { - "methods": { - "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" - }, - "response": { - "$ref": "FetchThreatListUpdatesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v4/threatListUpdates:fetch" - } - } - }, - "encodedFullHashes": { - "methods": { - "get": { - "flatPath": "v4/encodedFullHashes/{encodedRequest}", - "id": "safebrowsing.encodedFullHashes.get", - "path": "v4/encodedFullHashes/{encodedRequest}", - "description": "", - "response": { - "$ref": "FindFullHashesResponse" - }, - "parameterOrder": [ - "encodedRequest" - ], - "httpMethod": "GET", - "parameters": { - "clientVersion": { - "location": "query", - "description": "The version of the client implementation.", - "type": "string" - }, - "encodedRequest": { - "format": "byte", - "description": "A serialized FindFullHashesRequest proto.", - "type": "string", - "required": true, - "location": "path" - }, - "clientId": { - "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", - "type": "string", - "location": "query" - } - } - } - } - }, "threatLists": { "methods": { "list": { + "path": "v4/threatLists", + "id": "safebrowsing.threatLists.list", + "description": "Lists the Safe Browsing threat lists available for download.", + "httpMethod": "GET", "parameterOrder": [], "response": { "$ref": "ListThreatListsResponse" }, - "httpMethod": "GET", "parameters": {}, - "flatPath": "v4/threatLists", - "id": "safebrowsing.threatLists.list", - "path": "v4/threatLists", - "description": "Lists the Safe Browsing threat lists available for download." + "flatPath": "v4/threatLists" } } }, "threatMatches": { "methods": { "find": { - "response": { - "$ref": "FindThreatMatchesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "flatPath": "v4/threatMatches:find", "id": "safebrowsing.threatMatches.find", "path": "v4/threatMatches:find", "request": { "$ref": "FindThreatMatchesRequest" }, - "description": "Finds the threat entries that match the Safe Browsing lists." + "description": "Finds the threat entries that match the Safe Browsing lists.", + "response": { + "$ref": "FindThreatMatchesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {} } } }, "fullHashes": { "methods": { "find": { - "path": "v4/fullHashes:find", "id": "safebrowsing.fullHashes.find", + "path": "v4/fullHashes:find", "description": "Finds the full hashes that match the requested hash prefixes.", "request": { "$ref": "FindFullHashesRequest" }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "FindFullHashesResponse" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "flatPath": "v4/fullHashes:find" } @@ -116,30 +61,30 @@ "methods": { "get": { "description": "", - "response": { - "$ref": "FetchThreatListUpdatesResponse" - }, "parameterOrder": [ "encodedRequest" ], + "response": { + "$ref": "FetchThreatListUpdatesResponse" + }, "httpMethod": "GET", "parameters": { + "clientId": { + "location": "query", + "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API.", + "type": "string" + }, "clientVersion": { "location": "query", "description": "The version of the client implementation.", "type": "string" }, "encodedRequest": { - "location": "path", "format": "byte", "description": "A serialized FetchThreatListUpdatesRequest proto.", "type": "string", - "required": true - }, - "clientId": { - "location": "query", - "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API.", - "type": "string" + "required": true, + "location": "path" } }, "flatPath": "v4/encodedUpdates/{encodedRequest}", @@ -147,6 +92,61 @@ "path": "v4/encodedUpdates/{encodedRequest}" } } + }, + "threatListUpdates": { + "methods": { + "fetch": { + "parameters": {}, + "flatPath": "v4/threatListUpdates:fetch", + "path": "v4/threatListUpdates:fetch", + "id": "safebrowsing.threatListUpdates.fetch", + "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once.", + "request": { + "$ref": "FetchThreatListUpdatesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "FetchThreatListUpdatesResponse" + } + } + } + }, + "encodedFullHashes": { + "methods": { + "get": { + "parameters": { + "clientId": { + "location": "query", + "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", + "type": "string" + }, + "clientVersion": { + "type": "string", + "location": "query", + "description": "The version of the client implementation." + }, + "encodedRequest": { + "location": "path", + "format": "byte", + "description": "A serialized FindFullHashesRequest proto.", + "type": "string", + "required": true + } + }, + "flatPath": "v4/encodedFullHashes/{encodedRequest}", + "path": "v4/encodedFullHashes/{encodedRequest}", + "id": "safebrowsing.encodedFullHashes.get", + "description": "", + "httpMethod": "GET", + "parameterOrder": [ + "encodedRequest" + ], + "response": { + "$ref": "FindFullHashesResponse" + } + } + } } }, "parameters": { @@ -156,25 +156,20 @@ "type": "string" }, "prettyPrint": { - "description": "Returns response with indentations and line breaks.", "default": "true", "type": "boolean", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "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" }, - "callback": { + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string", - "location": "query", - "description": "JSONP" + "location": "query" }, "$.xgafv": { "enumDescriptions": [ @@ -189,12 +184,12 @@ "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", @@ -203,200 +198,53 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] }, "access_token": { + "location": "query", "description": "OAuth access token.", - "type": "string", - "location": "query" + "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" + "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" + "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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, - "oauth_token": { + "bearer_token": { + "type": "string", "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "description": "OAuth bearer token." }, - "bearer_token": { - "description": "OAuth bearer token.", + "oauth_token": { "type": "string", - "location": "query" + "location": "query", + "description": "OAuth 2.0 token for the current user." } }, "schemas": { - "ThreatInfo": { - "description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.", - "type": "object", - "properties": { - "threatEntries": { - "items": { - "$ref": "ThreatEntry" - }, - "type": "array", - "description": "The threat entries to be checked." - }, - "threatEntryTypes": { - "description": "The entry types to be checked.", - "items": { - "type": "string", - "enum": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ] - }, - "type": "array", - "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" - ] - }, - "threatTypes": { - "description": "The threat types to be checked.", - "items": { - "enum": [ - "THREAT_TYPE_UNSPECIFIED", - "MALWARE", - "SOCIAL_ENGINEERING", - "UNWANTED_SOFTWARE", - "POTENTIALLY_HARMFUL_APPLICATION", - "MALICIOUS_BINARY" - ], - "type": "string" - }, - "type": "array", - "enumDescriptions": [ - "Unknown.", - "Malware threat type.", - "Social engineering threat type.", - "Unwanted software threat type.", - "Potentially harmful application threat type.", - "Malicious binary threat type." - ] - }, - "platformTypes": { - "items": { - "type": "string", - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ] - }, - "type": "array", - "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." - } - }, - "id": "ThreatInfo" - }, - "FindThreatMatchesRequest": { - "description": "Request to check entries against lists.", - "type": "object", - "properties": { - "client": { - "description": "The client metadata.", - "$ref": "ClientInfo" - }, - "threatInfo": { - "$ref": "ThreatInfo", - "description": "The lists and entries to be checked for matches." - } - }, - "id": "FindThreatMatchesRequest" - }, - "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.", - "items": { - "$ref": "MetadataEntry" - }, - "type": "array" - } - }, - "id": "ThreatEntryMetadata" - }, - "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.", - "items": { - "format": "int32", - "type": "integer" - }, - "type": "array" - } - }, - "id": "RawIndices" - }, - "RawHashes": { - "type": "object", - "properties": { - "prefixSize": { - "type": "integer", - "format": "int32", - "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash)." - }, - "rawHashes": { - "format": "byte", - "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.", - "type": "string" - } - }, - "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." - }, "FetchThreatListUpdatesResponse": { "type": "object", "properties": { "minimumWaitDuration": { - "type": "string", "format": "google-duration", - "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." + "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.", + "type": "string" }, "listUpdateResponses": { "description": "The list updates requested by the clients.", @@ -408,54 +256,54 @@ }, "id": "FetchThreatListUpdatesResponse" }, - "Checksum": { - "id": "Checksum", - "description": "The expected state of a client's local database.", - "type": "object", - "properties": { - "sha256": { - "format": "byte", - "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.", - "type": "string" - } - } - }, "FindFullHashesResponse": { - "type": "object", "properties": { - "negativeCacheDuration": { - "type": "string", - "format": "google-duration", - "description": "For requested entities that did not match the threat list, how long to\ncache the response." - }, "minimumWaitDuration": { "format": "google-duration", "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.", "type": "string" - }, - "matches": { - "description": "The full hashes that matched the requested prefixes.", - "items": { - "$ref": "ThreatMatch" - }, - "type": "array" + }, + "matches": { + "items": { + "$ref": "ThreatMatch" + }, + "type": "array", + "description": "The full hashes that matched the requested prefixes." + }, + "negativeCacheDuration": { + "format": "google-duration", + "description": "For requested entities that did not match the threat list, how long to\ncache the response.", + "type": "string" + } + }, + "id": "FindFullHashesResponse", + "type": "object" + }, + "Checksum": { + "description": "The expected state of a client's local database.", + "type": "object", + "properties": { + "sha256": { + "format": "byte", + "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.", + "type": "string" } }, - "id": "FindFullHashesResponse" + "id": "Checksum" }, "ThreatEntrySet": { + "description": "A set of threats that should be added or removed from a client's local\ndatabase.", + "type": "object", "properties": { "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." + "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" }, "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." + "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" }, "compressionType": { - "description": "The compression type for the entries in this set.", - "type": "string", "enumDescriptions": [ "Unknown.", "Raw, uncompressed data.", @@ -465,24 +313,33 @@ "COMPRESSION_TYPE_UNSPECIFIED", "RAW", "RICE" - ] + ], + "description": "The compression type for the entries in this set.", + "type": "string" }, "rawIndices": { - "description": "The raw removal indices for a local list.", - "$ref": "RawIndices" + "$ref": "RawIndices", + "description": "The raw removal indices for a local list." }, "rawHashes": { - "$ref": "RawHashes", - "description": "The raw SHA256-formatted entries." + "description": "The raw SHA256-formatted entries.", + "$ref": "RawHashes" } }, - "id": "ThreatEntrySet", - "description": "A set of threats that should be added or removed from a client's local\ndatabase.", - "type": "object" + "id": "ThreatEntrySet" }, "FindFullHashesRequest": { + "description": "Request to return full hashes matched by the provided hash prefixes.", "type": "object", "properties": { + "clientStates": { + "items": { + "format": "byte", + "type": "string" + }, + "type": "array", + "description": "The current client states for each of the client's local threat lists." + }, "client": { "description": "The client metadata.", "$ref": "ClientInfo" @@ -492,28 +349,50 @@ "description": "The lists and hashes to be checked." }, "apiClient": { - "$ref": "ClientInfo", - "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation." - }, - "clientStates": { - "description": "The current client states for each of the client's local threat lists.", - "items": { - "type": "string", - "format": "byte" - }, - "type": "array" + "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.", + "$ref": "ClientInfo" } }, - "id": "FindFullHashesRequest", - "description": "Request to return full hashes matched by the provided hash prefixes." + "id": "FindFullHashesRequest" }, "ListUpdateRequest": { "description": "A single list update request.", "type": "object", "properties": { + "state": { + "format": "byte", + "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).", + "type": "string" + }, + "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." + ] + }, "constraints": { - "description": "The constraints associated with this request.", - "$ref": "Constraints" + "$ref": "Constraints", + "description": "The constraints associated with this request." }, "threatType": { "description": "The type of threat posed by entries present in the list.", @@ -536,6 +415,8 @@ ] }, "threatEntryType": { + "description": "The types of entries present in the list.", + "type": "string", "enumDescriptions": [ "Unspecified.", "A URL.", @@ -553,112 +434,33 @@ "CHROME_EXTENSION", "FILENAME", "CERT" - ], - "description": "The types of entries present in the list.", - "type": "string" - }, - "state": { - "format": "byte", - "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).", - "type": "string" - }, - "platformType": { - "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." - ], - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" ] } }, "id": "ListUpdateRequest" }, "FetchThreatListUpdatesRequest": { + "id": "FetchThreatListUpdatesRequest", "description": "Describes a Safe Browsing API update request. Clients can request updates for\nmultiple lists in a single request.\nNOTE: Field index 2 is unused.\nNEXT: 5", "type": "object", "properties": { "listUpdateRequests": { - "description": "The requested threat list updates.", "items": { "$ref": "ListUpdateRequest" }, - "type": "array" + "type": "array", + "description": "The requested threat list updates." }, "client": { - "description": "The client metadata.", - "$ref": "ClientInfo" + "$ref": "ClientInfo", + "description": "The client metadata." } - }, - "id": "FetchThreatListUpdatesRequest" + } }, "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.", - "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.", "items": { @@ -667,22 +469,22 @@ "type": "array" }, "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" + "type": "string", + "enumDescriptions": [ + "Unknown.", + "Partial updates are applied to the client's existing local database.", + "Full updates replace the client's entire local database. This means\nthat either the client was seriously out-of-date or the client is\nbelieved to be corrupt." + ] }, "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." + "description": "The expected SHA256 hash of the client state; that is, of the sorted list\nof all hashes present in the database after applying the provided update.\nIf the client state doesn't match the expected state, the client must\ndisregard this update and retry later.", + "$ref": "Checksum" }, "threatType": { "enumDescriptions": [ @@ -715,14 +517,59 @@ "format": "byte", "description": "The new client state, in encrypted format. Opaque to clients.", "type": "string" + }, + "platformType": { + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], + "description": "The platform type for which data is returned.", + "type": "string", + "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." + ] + }, + "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 format of the threats.", + "type": "string" } }, - "id": "ListUpdateResponse", - "description": "An update to an individual list.", - "type": "object" + "id": "ListUpdateResponse" }, "Constraints": { - "description": "The constraints for this update.", "type": "object", "properties": { "region": { @@ -735,21 +582,21 @@ "type": "integer" }, "supportedCompressions": { + "enumDescriptions": [ + "Unknown.", + "Raw, uncompressed data.", + "Rice-Golomb encoded data." + ], "description": "The compression types supported by the client.", "items": { + "type": "string", "enum": [ "COMPRESSION_TYPE_UNSPECIFIED", "RAW", "RICE" - ], - "type": "string" + ] }, - "type": "array", - "enumDescriptions": [ - "Unknown.", - "Raw, uncompressed data.", - "Rice-Golomb encoded data." - ] + "type": "array" }, "maxUpdateEntries": { "format": "int32", @@ -757,25 +604,18 @@ "type": "integer" } }, - "id": "Constraints" + "id": "Constraints", + "description": "The constraints for this update." }, "ThreatMatch": { - "id": "ThreatMatch", "description": "A match when checking a threat entry in the Safe Browsing threat lists.", "type": "object", "properties": { + "threat": { + "$ref": "ThreatEntry", + "description": "The threat matching this threat." + }, "platformType": { - "enum": [ - "PLATFORM_TYPE_UNSPECIFIED", - "WINDOWS", - "LINUX", - "ANDROID", - "OSX", - "IOS", - "ANY_PLATFORM", - "ALL_PLATFORMS", - "CHROME" - ], "description": "The platform type matching this threat.", "type": "string", "enumDescriptions": [ @@ -788,6 +628,17 @@ "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" ] }, "threatEntryType": { @@ -818,12 +669,10 @@ "type": "string" }, "threatEntryMetadata": { - "$ref": "ThreatEntryMetadata", - "description": "Optional metadata associated with this threat." + "description": "Optional metadata associated with this threat.", + "$ref": "ThreatEntryMetadata" }, "threatType": { - "description": "The threat type matching this threat.", - "type": "string", "enumDescriptions": [ "Unknown.", "Malware threat type.", @@ -839,22 +688,19 @@ "UNWANTED_SOFTWARE", "POTENTIALLY_HARMFUL_APPLICATION", "MALICIOUS_BINARY" - ] - }, - "threat": { - "$ref": "ThreatEntry", - "description": "The threat matching this threat." + ], + "description": "The threat type matching this threat.", + "type": "string" } - } + }, + "id": "ThreatMatch" }, "RiceDeltaEncoding": { - "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.", - "type": "object", "properties": { "encodedData": { - "type": "string", "format": "byte", - "description": "The encoded deltas that are encoded using the Golomb-Rice coder." + "description": "The encoded deltas that are encoded using the Golomb-Rice coder.", + "type": "string" }, "firstValue": { "format": "int64", @@ -867,12 +713,14 @@ "type": "integer" }, "riceParameter": { + "type": "integer", "format": "int32", - "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.", - "type": "integer" + "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." } }, - "id": "RiceDeltaEncoding" + "id": "RiceDeltaEncoding", + "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.", + "type": "object" }, "ListThreatListsResponse": { "type": "object", @@ -891,11 +739,6 @@ "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.", "type": "object", "properties": { - "digest": { - "format": "byte", - "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.", - "type": "string" - }, "hash": { "format": "byte", "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.", @@ -904,6 +747,11 @@ "url": { "description": "A URL.", "type": "string" + }, + "digest": { + "format": "byte", + "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.", + "type": "string" } }, "id": "ThreatEntry" @@ -926,6 +774,17 @@ "type": "object", "properties": { "platformType": { + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ], "description": "The platform type targeted by the list's entries.", "type": "string", "enumDescriptions": [ @@ -938,20 +797,17 @@ "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" ] }, "threatType": { + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION", + "MALICIOUS_BINARY" + ], "description": "The threat type posed by the list's entries.", "type": "string", "enumDescriptions": [ @@ -961,26 +817,9 @@ "Unwanted software threat type.", "Potentially harmful application threat type.", "Malicious binary threat type." - ], - "enum": [ - "THREAT_TYPE_UNSPECIFIED", - "MALWARE", - "SOCIAL_ENGINEERING", - "UNWANTED_SOFTWARE", - "POTENTIALLY_HARMFUL_APPLICATION", - "MALICIOUS_BINARY" ] }, "threatEntryType": { - "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" - ], "enum": [ "THREAT_ENTRY_TYPE_UNSPECIFIED", "URL", @@ -991,31 +830,38 @@ "CERT" ], "description": "The entry types contained in the list.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ] } }, "id": "ThreatListDescriptor" }, "MetadataEntry": { + "id": "MetadataEntry", "description": "A single metadata entry.", "type": "object", "properties": { "key": { - "type": "string", "format": "byte", - "description": "The metadata entry key. For JSON requests, the key is base64-encoded." + "description": "The metadata entry key. For JSON requests, the key is base64-encoded.", + "type": "string" }, "value": { "format": "byte", "description": "The metadata entry value. For JSON requests, the value is base64-encoded.", "type": "string" } - }, - "id": "MetadataEntry" + } }, "ClientInfo": { - "description": "The client metadata associated with Safe Browsing API requests.", - "type": "object", "properties": { "clientId": { "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", @@ -1026,25 +872,179 @@ "type": "string" } }, - "id": "ClientInfo" + "id": "ClientInfo", + "description": "The client metadata associated with Safe Browsing API requests.", + "type": "object" + }, + "ThreatInfo": { + "properties": { + "threatEntryTypes": { + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ], + "description": "The entry types to be checked.", + "items": { + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "type": "string" + }, + "type": "array" + }, + "threatTypes": { + "description": "The threat types to be checked.", + "items": { + "type": "string", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION", + "MALICIOUS_BINARY" + ] + }, + "type": "array", + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type.", + "Malicious binary threat type." + ] + }, + "platformTypes": { + "description": "The platform types to be checked.", + "items": { + "type": "string", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "type": "array", + "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.", + "items": { + "$ref": "ThreatEntry" + }, + "type": "array" + } + }, + "id": "ThreatInfo", + "description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.", + "type": "object" + }, + "FindThreatMatchesRequest": { + "description": "Request to check entries against lists.", + "type": "object", + "properties": { + "client": { + "description": "The client metadata.", + "$ref": "ClientInfo" + }, + "threatInfo": { + "$ref": "ThreatInfo", + "description": "The lists and entries to be checked for matches." + } + }, + "id": "FindThreatMatchesRequest" + }, + "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.", + "items": { + "$ref": "MetadataEntry" + }, + "type": "array" + } + }, + "id": "ThreatEntryMetadata" + }, + "RawIndices": { + "id": "RawIndices", + "description": "A set of raw indices to remove from a local list.", + "type": "object", + "properties": { + "indices": { + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array", + "description": "The indices to remove from a lexicographically-sorted local list." + } + } + }, + "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": { + "rawHashes": { + "format": "byte", + "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.", + "type": "string" + }, + "prefixSize": { + "format": "int32", + "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash).", + "type": "integer" + } + }, + "id": "RawHashes" } }, + "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": "v4", "baseUrl": "https://safebrowsing.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Safe Browsing API is an experimental API that allows client applications to check URLs against Google's constantly-updated blacklists of suspected phishing and malware pages. Your client application can use the API to download an encrypted table for local, client-side lookups of URLs.", "servicePath": "", + "description": "The Safe Browsing API is an experimental API that allows client applications to check URLs against Google's constantly-updated blacklists of suspected phishing and malware pages. Your client application can use the API to download an encrypted table for local, client-side lookups of URLs.", + "kind": "discovery#restDescription", "rootUrl": "https://safebrowsing.googleapis.com/", "basePath": "", "ownerDomain": "google.com", "name": "safebrowsing", "batchPath": "batch", - "revision": "20170717", - "id": "safebrowsing:v4", - "documentationLink": "https://developers.google.com/safe-browsing/" + "revision": "20170710", + "documentationLink": "https://developers.google.com/safe-browsing/", + "id": "safebrowsing:v4" } diff --git a/DiscoveryJson/script_v1.json b/DiscoveryJson/script_v1.json index 26e8e6362e..77c0ee2c51 100644 --- a/DiscoveryJson/script_v1.json +++ b/DiscoveryJson/script_v1.json @@ -1,19 +1,22 @@ { - "rootUrl": "https://script.googleapis.com/", "basePath": "", "ownerDomain": "google.com", "name": "script", "batchPath": "batch", - "id": "script:v1", + "revision": "20170714", "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/scripts/run", - "revision": "20170712", + "id": "script:v1", "title": "Google Apps Script Execution API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { "scripts": { "methods": { "run": { + "request": { + "$ref": "ExecutionRequest" + }, + "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script Execution 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" }, @@ -44,52 +47,64 @@ }, "flatPath": "v1/scripts/{scriptId}:run", "id": "script.scripts.run", - "path": "v1/scripts/{scriptId}:run", - "request": { - "$ref": "ExecutionRequest" - }, - "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script Execution 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." + "path": "v1/scripts/{scriptId}:run" } } } }, "parameters": { - "oauth_token": { + "key": { "location": "query", - "description": "OAuth 2.0 token for the current user.", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "access_token": { + "location": "query", + "description": "OAuth access token.", "type": "string" }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "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": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", "location": "query" }, "prettyPrint": { + "description": "Returns response with indentations and line breaks.", "default": "true", "type": "boolean", - "location": "query", - "description": "Returns response with indentations and line breaks." + "location": "query" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "uploadType": { "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string", "location": "query" }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, "$.xgafv": { "description": "V1 error format.", "type": "string", @@ -103,8 +118,12 @@ "2" ] }, - "alt": { + "callback": { + "description": "JSONP", "type": "string", + "location": "query" + }, + "alt": { "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -117,28 +136,8 @@ "json", "media", "proto" - ] - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "location": "query", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + ], "type": "string" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" } }, "schemas": { @@ -146,27 +145,26 @@ "description": "A request to retrieve the results from a collection of requests,\nspecified by the operation resource names.", "type": "object", "properties": { + "timeout": { + "format": "google-duration", + "description": "Timeout for information retrieval in milliseconds.", + "type": "string" + }, "scriptId": { "description": "The script id which specifies the script which all processes in the names\nfield must be from.", "type": "string" }, "names": { + "description": "List of operation resource names that we want to join,\nas returned from a call to RunAsync.", "items": { "type": "string" }, - "type": "array", - "description": "List of operation resource names that we want to join,\nas returned from a call to RunAsync." - }, - "timeout": { - "type": "string", - "format": "google-duration", - "description": "Timeout for information retrieval in milliseconds." + "type": "array" } }, "id": "JoinAsyncRequest" }, "ExecutionResponse": { - "id": "ExecutionResponse", "description": "An object that provides the return value of a function executed through the\nApps Script Execution API. If a\n`run` call succeeds and the\nscript function returns successfully, the response body's\n`response` field contains this\n`ExecutionResponse` object.", "type": "object", "properties": { @@ -174,69 +172,70 @@ "description": "The return value of the script function. The type matches the object type\nreturned in Apps Script. Functions called through the Execution 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" }, "JoinAsyncResponse": { + "description": "An object that provides the return value for the JoinAsync method.", "type": "object", "properties": { "results": { - "type": "object", "additionalProperties": { "$ref": "Operation" }, - "description": "The return values for each script function, in a map of operation resource\nnames to the Operation containing the result of the process. The response\nwill contain either an error or the result of the script function." + "description": "The return values for each script function, in a map of operation resource\nnames to the Operation containing the result of the process. The response\nwill contain either an error or the result of the script function.", + "type": "object" } }, - "id": "JoinAsyncResponse", - "description": "An object that provides the return value for the JoinAsync method." + "id": "JoinAsyncResponse" }, "Operation": { + "description": "The response will not arrive until the function finishes executing. The maximum runtime is listed in the guide to [limitations in Apps Script](https://developers.google.com/apps-script/guides/services/quotas#current_limitations).\n\u003cp\u003eIf the script function returns successfully, the `response` field will contain an `ExecutionResponse` object with the function's return value in the object's `result` field.\u003c/p\u003e\n\u003cp\u003eIf the script function (or Apps Script itself) throws an exception, the `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error.\u003c/p\u003e\n\u003cp\u003eIf the `run` call itself fails (for example, because of a malformed request or an authorization error), the method will return an HTTP response code in the 4XX range with a different format for the response body. Client libraries will automatically convert a 4XX response into an exception class.\u003c/p\u003e", "type": "object", "properties": { - "done": { - "type": "boolean", - "description": "This field is not used." + "error": { + "$ref": "Status", + "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error." }, - "response": { + "metadata": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "If the script function returns successfully, this field will contain an `ExecutionResponse` object with the function's return value as the object's `result` field.", + "description": "This field is not used.", "type": "object" }, - "name": { + "done": { "description": "This field is not used.", - "type": "string" - }, - "error": { - "$ref": "Status", - "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error." + "type": "boolean" }, - "metadata": { - "description": "This field is not used.", + "response": { + "description": "If the script function returns successfully, this field will contain an `ExecutionResponse` object with the function's return value as the object's `result` field.", "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" } + }, + "name": { + "description": "This field is not used.", + "type": "string" } }, - "id": "Operation", - "description": "The response will not arrive until the function finishes executing. The maximum runtime is listed in the guide to [limitations in Apps Script](https://developers.google.com/apps-script/guides/services/quotas#current_limitations).\n\u003cp\u003eIf the script function returns successfully, the `response` field will contain an `ExecutionResponse` object with the function's return value in the object's `result` field.\u003c/p\u003e\n\u003cp\u003eIf the script function (or Apps Script itself) throws an exception, the `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error.\u003c/p\u003e\n\u003cp\u003eIf the `run` call itself fails (for example, because of a malformed request or an authorization error), the method will return an HTTP response code in the 4XX range with a different format for the response body. Client libraries will automatically convert a 4XX response into an exception class.\u003c/p\u003e" + "id": "Operation" }, "ScriptStackTraceElement": { "description": "A stack trace through the script that shows where the execution failed.", "type": "object", "properties": { - "function": { - "description": "The name of the function that failed.", - "type": "string" - }, "lineNumber": { "format": "int32", "description": "The line number where the script failed.", "type": "integer" + }, + "function": { + "description": "The name of the function that failed.", + "type": "string" } }, "id": "ScriptStackTraceElement" @@ -267,10 +266,6 @@ "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's `error` field will contain this `Status` object.", "type": "object", "properties": { - "message": { - "description": "A developer-facing error message, which is in English. Any user-facing error message is localized and sent in the [`google.rpc.Status.details`](google.rpc.Status.details) field, or localized by the client.", - "type": "string" - }, "details": { "description": "An array that contains a single `ExecutionError` object that provides information about the nature of the error.", "items": { @@ -286,23 +281,25 @@ "format": "int32", "description": "The status code. For this API, this value will always be 3, corresponding to an INVALID_ARGUMENT error.", "type": "integer" + }, + "message": { + "description": "A developer-facing error message, which is in English. Any user-facing error message is localized and sent in the [`google.rpc.Status.details`](google.rpc.Status.details) field, or localized by the client.", + "type": "string" } }, "id": "Status" }, "ExecutionRequest": { + "description": "A request to run the function in a script. The script is identified by the\nspecified `script_id`. Executing a function on a script returns results\nbased on the implementation of the script.", + "type": "object", "properties": { - "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) script —\nthat is, it can access information like the user's current cursor position\n(in Docs) or selected cell (in Sheets). To retrieve the state, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.", - "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 Execution API. Optional; default is `false`.", "type": "boolean" }, "function": { - "type": "string", - "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters." + "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.", + "type": "string" }, "parameters": { "description": "The parameters to be passed to the function being executed. The object type\nfor each parameter should match the expected type in Apps Script.\nParameters cannot be Apps Script-specific object types (such as a\n`Document` or a `Calendar`); they can only be primitive types such as\n`string`, `number`, `array`, `object`, or `boolean`. Optional.", @@ -310,29 +307,25 @@ "type": "any" }, "type": "array" + }, + "sessionState": { + "description": "For Android add-ons only. An ID that represents the user's current session\nin the Android app for Google Docs or Sheets, included as extra data in the\n[`Intent`](https://developer.android.com/guide/components/intents-filters.html)\nthat launches the add-on. When an Android add-on is run with a session\nstate, it gains the privileges of a\n[bound](https://developers.google.com/apps-script/guides/bound) script —\nthat is, it can access information like the user's current cursor position\n(in Docs) or selected cell (in Sheets). To retrieve the state, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.", + "type": "string" } }, - "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" + "id": "ExecutionRequest" } }, + "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://script.googleapis.com/", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, - "https://www.google.com/calendar/feeds": { - "description": "Manage your calendars" - }, "https://www.googleapis.com/auth/groups": { "description": "View and manage your Google Groups" }, @@ -342,28 +335,35 @@ "https://www.googleapis.com/auth/drive": { "description": "View and manage the files in your Google Drive" }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - }, - "https://mail.google.com/": { - "description": "Read, send, delete, and manage your email" + "https://www.googleapis.com/auth/admin.directory.user": { + "description": "View and manage the provisioning of users on your domain" }, "https://www.googleapis.com/auth/admin.directory.group": { "description": "View and manage the provisioning of groups on your domain" }, - "https://www.googleapis.com/auth/admin.directory.user": { - "description": "View and manage the provisioning of users on your domain" + "https://mail.google.com/": { + "description": "Read, send, delete, and manage your email" + }, + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" }, "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" } } } }, "kind": "discovery#restDescription", "description": "Executes Google Apps Script projects.", - "servicePath": "" + "servicePath": "", + "rootUrl": "https://script.googleapis.com/" } diff --git a/DiscoveryJson/searchconsole_v1.json b/DiscoveryJson/searchconsole_v1.json index 2de4c67f7e..716d2aab27 100644 --- a/DiscoveryJson/searchconsole_v1.json +++ b/DiscoveryJson/searchconsole_v1.json @@ -1,6 +1,20 @@ { - "discoveryVersion": "v1", + "baseUrl": "https://searchconsole.googleapis.com/", + "canonicalName": "Search Console", + "servicePath": "", + "description": "Provides tools for running validation tests against single URLs", + "kind": "discovery#restDescription", + "rootUrl": "https://searchconsole.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "searchconsole", + "batchPath": "batch", + "documentationLink": "https://developers.google.com/webmaster-tools/search-console-api/", + "revision": "20170718", + "id": "searchconsole:v1", + "title": "Google Search Console URL Testing Tools API", "ownerName": "Google", + "discoveryVersion": "v1", "version_module": "True", "resources": { "urlTestingTools": { @@ -8,19 +22,19 @@ "mobileFriendlyTest": { "methods": { "run": { - "description": "Runs Mobile-Friendly Test for a given URL.", - "request": { - "$ref": "RunMobileFriendlyTestRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "RunMobileFriendlyTestResponse" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "flatPath": "v1/urlTestingTools/mobileFriendlyTest:run", + "id": "searchconsole.urlTestingTools.mobileFriendlyTest.run", "path": "v1/urlTestingTools/mobileFriendlyTest:run", - "id": "searchconsole.urlTestingTools.mobileFriendlyTest.run" + "request": { + "$ref": "RunMobileFriendlyTestRequest" + }, + "description": "Runs Mobile-Friendly Test for a given URL." } } } @@ -28,31 +42,68 @@ } }, "parameters": { - "bearer_token": { + "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 bearer token.", + "description": "OAuth access token.", "type": "string" }, - "oauth_token": { + "key": { "location": "query", - "description": "OAuth 2.0 token for the current user.", + "description": "API key. 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" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"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" }, - "prettyPrint": { + "pp": { + "description": "Pretty-print response.", + "default": "true", + "type": "boolean", + "location": "query" + }, + "bearer_token": { + "type": "string", "location": "query", - "description": "Returns response with indentations and line breaks.", + "description": "OAuth bearer token." + }, + "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": { "default": "true", - "type": "boolean" + "type": "boolean", + "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", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "location": "query" }, "fields": { "description": "Selector specifying which fields to include in a partial response.", @@ -73,52 +124,85 @@ "type": "string" }, "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "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.", + "description": "JSONP", "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.", - "default": "true", - "type": "boolean" } }, "schemas": { + "TestStatus": { + "description": "Final state of the test, including error details if necessary.", + "type": "object", + "properties": { + "status": { + "type": "string", + "enumDescriptions": [ + "Internal error when running this test. Please try running the test again.", + "Inspection has completed without errors.", + "Inspection terminated in an error state. This indicates a problem in\nGoogle's infrastructure, not a user error. Please try again later.", + "Google can not access the URL because of a user error such as a robots.txt\nblockage, a 403 or 500 code etc. Please make sure that the URL provided is\naccessible by Googlebot and is not password protected." + ], + "enum": [ + "TEST_STATUS_UNSPECIFIED", + "COMPLETE", + "INTERNAL_ERROR", + "PAGE_UNREACHABLE" + ], + "description": "Status of the test." + }, + "details": { + "description": "Error details if applicable.", + "type": "string" + } + }, + "id": "TestStatus" + }, + "Image": { + "type": "object", + "properties": { + "mimeType": { + "description": "The mime-type of the image data.", + "type": "string" + }, + "data": { + "format": "byte", + "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.", + "type": "string" + } + }, + "id": "Image", + "description": "Describe image data." + }, + "RunMobileFriendlyTestRequest": { + "type": "object", + "properties": { + "url": { + "description": "URL for inspection.", + "type": "string" + }, + "requestScreenshot": { + "type": "boolean", + "description": "Whether or not screenshot is requested. Default is false." + } + }, + "id": "RunMobileFriendlyTestRequest", + "description": "Mobile-friendly test request." + }, "MobileFriendlyIssue": { + "id": "MobileFriendlyIssue", + "description": "Mobile-friendly issue.", + "type": "object", "properties": { "rule": { + "enumDescriptions": [ + "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.", + "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).", + "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).", + "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).", + "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).", + "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).", + "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)." + ], "enum": [ "MOBILE_FRIENDLY_RULE_UNSPECIFIED", "USES_INCOMPATIBLE_PLUGINS", @@ -129,31 +213,14 @@ "TAP_TARGETS_TOO_CLOSE" ], "description": "Rule violated.", - "type": "string", - "enumDescriptions": [ - "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.", - "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).", - "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).", - "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).", - "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).", - "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).", - "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)." - ] + "type": "string" } - }, - "id": "MobileFriendlyIssue", - "description": "Mobile-friendly issue.", - "type": "object" + } }, "RunMobileFriendlyTestResponse": { - "id": "RunMobileFriendlyTestResponse", "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.", "type": "object", "properties": { - "screenshot": { - "description": "Screenshot of the requested URL.", - "$ref": "Image" - }, "resourceIssues": { "description": "Information about embedded resources issues.", "items": { @@ -185,8 +252,13 @@ }, "type": "array", "description": "List of mobile-usability issues." + }, + "screenshot": { + "$ref": "Image", + "description": "Screenshot of the requested URL." } - } + }, + "id": "RunMobileFriendlyTestResponse" }, "ResourceIssue": { "id": "ResourceIssue", @@ -194,12 +266,13 @@ "type": "object", "properties": { "blockedResource": { - "$ref": "BlockedResource", - "description": "Describes a blocked resource issue." + "description": "Describes a blocked resource issue.", + "$ref": "BlockedResource" } } }, "BlockedResource": { + "description": "Blocked resource.", "type": "object", "properties": { "url": { @@ -207,86 +280,13 @@ "type": "string" } }, - "id": "BlockedResource", - "description": "Blocked resource." - }, - "TestStatus": { - "description": "Final state of the test, including error details if necessary.", - "type": "object", - "properties": { - "status": { - "enumDescriptions": [ - "Internal error when running this test. Please try running the test again.", - "Inspection has completed without errors.", - "Inspection terminated in an error state. This indicates a problem in\nGoogle's infrastructure, not a user error. Please try again later.", - "Google can not access the URL because of a user error such as a robots.txt\nblockage, a 403 or 500 code etc. Please make sure that the URL provided is\naccessible by Googlebot and is not password protected." - ], - "enum": [ - "TEST_STATUS_UNSPECIFIED", - "COMPLETE", - "INTERNAL_ERROR", - "PAGE_UNREACHABLE" - ], - "description": "Status of the test.", - "type": "string" - }, - "details": { - "description": "Error details if applicable.", - "type": "string" - } - }, - "id": "TestStatus" - }, - "Image": { - "properties": { - "mimeType": { - "description": "The mime-type of the image data.", - "type": "string" - }, - "data": { - "format": "byte", - "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.", - "type": "string" - } - }, - "id": "Image", - "description": "Describe image data.", - "type": "object" - }, - "RunMobileFriendlyTestRequest": { - "properties": { - "url": { - "description": "URL for inspection.", - "type": "string" - }, - "requestScreenshot": { - "description": "Whether or not screenshot is requested. Default is false.", - "type": "boolean" - } - }, - "id": "RunMobileFriendlyTestRequest", - "description": "Mobile-friendly test request.", - "type": "object" + "id": "BlockedResource" } }, - "protocol": "rest", "icons": { "x32": "http://www.google.com/images/icons/product/search-32.gif", "x16": "http://www.google.com/images/icons/product/search-16.gif" }, - "version": "v1", - "baseUrl": "https://searchconsole.googleapis.com/", - "canonicalName": "Search Console", - "servicePath": "", - "description": "Provides tools for running validation tests against single URLs", - "kind": "discovery#restDescription", - "rootUrl": "https://searchconsole.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "searchconsole", - "batchPath": "batch", - "id": "searchconsole:v1", - "documentationLink": "https://developers.google.com/webmaster-tools/search-console-api/", - "revision": "20170715", - "title": "Google Search Console URL Testing Tools API" + "protocol": "rest", + "version": "v1" } diff --git a/DiscoveryJson/servicecontrol_v1.json b/DiscoveryJson/servicecontrol_v1.json index f1866a51bd..08548b1a94 100644 --- a/DiscoveryJson/servicecontrol_v1.json +++ b/DiscoveryJson/servicecontrol_v1.json @@ -1,1082 +1,1092 @@ { + "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": "", + "id": "servicecontrol:v1", + "documentationLink": "https://cloud.google.com/service-control/", + "revision": "20170712", + "discoveryVersion": "v1", + "version_module": "True", "schemas": { - "CheckRequest": { - "description": "Request message for the Check method.", + "Money": { + "description": "Represents an amount of money with its currency type.", "type": "object", "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" - }, - "requestProjectSettings": { - "description": "Requests the project settings to be returned as part of the check response.", - "type": "boolean" + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" }, - "operation": { - "$ref": "Operation", - "description": "The operation to be checked." + "nanos": { + "format": "int32", + "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.", + "type": "integer" }, - "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.", + "units": { + "format": "int64", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", "type": "string" } }, - "id": "CheckRequest" + "id": "Money" }, - "QuotaOperation": { - "description": "Represents information regarding a quota operation.", + "EndReconciliationResponse": { "type": "object", "properties": { - "labels": { - "additionalProperties": { - "type": "string" + "reconciliationErrors": { + "description": "Indicates the decision of the reconciliation end.", + "items": { + "$ref": "QuotaError" }, - "description": "Labels describing the operation.", - "type": "object" - }, - "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" + "type": "array" }, "operationId": { - "type": "string", - "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls AllocateQuota\nand ReleaseQuota on the same operation, the two calls should carry the\nsame ID.\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." - }, - "quotaMode": { - "description": "Quota mode for this operation.", - "type": "string", - "enumDescriptions": [ - "", - "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.\nFor ReleaseQuota request, this mode is supported only for precise quota\nlimits. In this case, this operation releases quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the release can make used quota negative, release error\nwill be returned and no quota will be released.", - "For AllocateQuota request, this mode is supported only for imprecise\nquota limits. In this case, the operation allocates quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the amount is higher than the available quota, request does\nnot fail but all available quota will be allocated.\nFor ReleaseQuota request, this mode is supported for both precise quota\nlimits and imprecise quota limits. In this case, this operation releases\nquota for the amount specified in the service configuration or specified\nusing the quota metrics. If the release can make used quota\nnegative, request does not fail but only the used quota will be\nreleased. After the ReleaseQuota request completes, the used quota\nwill be 0, and never goes to negative.", - "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. Not supported for ReleaseQuota request." - ], - "enum": [ - "UNSPECIFIED", - "NORMAL", - "BEST_EFFORT", - "CHECK_ONLY" - ] + "description": "The same operation_id value used in the EndReconciliationRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" }, - "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. This field is not\nrequired if the quota operation is performed on non-API resources.\n\nExample of an RPC method name:\n google.example.library.v1.LibraryService.CreateShelf", + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", "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.", + "description": "Metric values as tracked by One Platform before the adjustment was made.\nThe following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"\n\n3. Delta value of the usage after the reconciliation for limits associated\nwith the metrics will be specified using the following metric:\n \"serviceruntime.googleapis.com/allocation/reconciliation_delta\"\nThe delta value is defined as:\n new_usage_from_client - existing_value_in_spanner.\nThis metric is not defined in serviceruntime.yaml or in Cloud Monarch.\nThis metric is meant for callers' use only. Since this metric is not\ndefined in the monitoring backend, reporting on this metric will result in\nan error.", "items": { "$ref": "MetricValueSet" }, "type": "array" } }, - "id": "QuotaOperation" + "id": "EndReconciliationResponse" }, - "EndReconciliationRequest": { + "ExplicitBuckets": { + "description": "Describing buckets with arbitrary user-provided width.", "type": "object", "properties": { - "reconciliationOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota reconciliation." - }, - "serviceConfigId": { - "description": "Specifies which version of service configuration should be used to process\nthe request. If unspecified or no matching version can be found, the latest\none will be used.", - "type": "string" + "bounds": { + "description": "'bound' is a list of strictly increasing boundaries between\nbuckets. Note that a list of length N-1 defines N buckets because\nof fenceposting. See comments on `bucket_options` for details.\n\nThe i'th finite bucket covers the interval\n [bound[i-1], bound[i])\nwhere i ranges from 1 to bound_size() - 1. Note that there are no\nfinite buckets at all if 'bound' only contains a single element; in\nthat special case the single bound defines the boundary between the\nunderflow and overflow buckets.\n\nbucket number lower bound upper bound\n i == 0 (underflow) -inf bound[i]\n 0 \u003c i \u003c bound_size() bound[i-1] bound[i]\n i == bound_size() (overflow) bound[i-1] +inf", + "items": { + "format": "double", + "type": "number" + }, + "type": "array" } }, - "id": "EndReconciliationRequest" + "id": "ExplicitBuckets" }, - "ReportInfo": { + "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": { - "operationId": { - "description": "The Operation.operation_id value from the request.", + "explicitBuckets": { + "description": "Buckets with arbitrary user-provided width.", + "$ref": "ExplicitBuckets" + }, + "maximum": { + "format": "double", + "description": "The maximum of the population of values. Ignored if `count` is zero.", + "type": "number" + }, + "sumOfSquaredDeviation": { + "format": "double", + "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.", + "type": "number" + }, + "exponentialBuckets": { + "$ref": "ExponentialBuckets", + "description": "Buckets with exponentially growing width." + }, + "minimum": { + "format": "double", + "description": "The minimum of the population of values. Ignored if `count` is zero.", + "type": "number" + }, + "linearBuckets": { + "$ref": "LinearBuckets", + "description": "Buckets with constant width." + }, + "mean": { + "format": "double", + "description": "The arithmetic mean of the samples in the distribution. If `count` is\nzero then this field must be zero.", + "type": "number" + }, + "count": { + "format": "int64", + "description": "The total number of samples in the distribution. Must be \u003e= 0.", "type": "string" }, - "quotaInfo": { - "$ref": "QuotaInfo", - "description": "Quota usage info when processing the `Operation`." + "bucketCounts": { + "description": "The number of samples in each histogram bucket. `bucket_counts` are\noptional. If present, they must sum to the `count` value.\n\nThe buckets are defined below in `bucket_option`. There are N buckets.\n`bucket_counts[0]` is the number of samples in the underflow bucket.\n`bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples\nin each of the finite buckets. And `bucket_counts[N] is the number\nof samples in the overflow bucket. See the comments of `bucket_option`\nbelow for more details.\n\nAny suffix of trailing zeros may be omitted.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" } }, - "id": "ReportInfo" + "id": "Distribution" }, - "ReportResponse": { - "description": "Response message for the Report method.", + "ExponentialBuckets": { + "description": "Describing buckets with exponentially growing width.", "type": "object", "properties": { - "reportInfos": { - "items": { - "$ref": "ReportInfo" - }, - "type": "array", - "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" + "growthFactor": { + "format": "double", + "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.", + "type": "number" }, - "serviceConfigId": { - "description": "The actual config id used to process the request.", - "type": "string" + "scale": { + "format": "double", + "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.", + "type": "number" }, - "reportErrors": { - "description": "Partial failures, one for each `Operation` in the request that failed\nprocessing. There are three possible combinations of the RPC status:\n\n1. The combination of a successful RPC status and an empty `report_errors`\n list indicates a complete success where all `Operations` in the\n request are processed successfully.\n2. The combination of a successful RPC status and a non-empty\n `report_errors` list indicates a partial success where some\n `Operations` in the request succeeded. Each\n `Operation` that failed processing has a corresponding item\n in this list.\n3. A failed RPC status indicates a general non-deterministic failure.\n When this happens, it's impossible to know which of the\n 'Operations' in the request succeeded or failed.", - "items": { - "$ref": "ReportError" - }, - "type": "array" + "numFiniteBuckets": { + "format": "int32", + "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.", + "type": "integer" } }, - "id": "ReportResponse" + "id": "ExponentialBuckets" }, - "Operation": { + "AuthorizationInfo": { + "description": "Authorization information for the operation.", + "type": "object", "properties": { - "quotaProperties": { - "$ref": "QuotaProperties", - "description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request." - }, - "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.", + "resource": { + "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID", "type": "string" }, - "operationId": { - "type": "string", - "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." + "granted": { + "description": "Whether or not authorization for `resource` and `permission`\nwas granted.", + "type": "boolean" }, - "operationName": { - "description": "Fully qualified name of the operation. Reserved for future use.", + "permission": { + "description": "The required IAM permission.", "type": "string" + } + }, + "id": "AuthorizationInfo" + }, + "StartReconciliationResponse": { + "type": "object", + "properties": { + "reconciliationErrors": { + "description": "Indicates the decision of the reconciliation start.", + "items": { + "$ref": "QuotaError" + }, + "type": "array" }, - "endTime": { - "format": "google-datetime", - "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.", + "operationId": { + "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", "type": "string" }, - "startTime": { - "format": "google-datetime", - "description": "Required. Start time of the operation.", + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", "type": "string" }, - "importance": { - "description": "DO NOT USE. This is an experimental field.", + "quotaMetrics": { + "description": "Metric values as tracked by One Platform before the start of\nreconciliation. The following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", + "items": { + "$ref": "MetricValueSet" + }, + "type": "array" + } + }, + "id": "StartReconciliationResponse" + }, + "QuotaProperties": { + "description": "Represents the properties needed for quota operations.", + "type": "object", + "properties": { + "quotaMode": { + "description": "Quota mode for this operation.", "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." + "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": [ - "LOW", - "HIGH", - "DEBUG" + "ACQUIRE", + "ACQUIRE_BEST_EFFORT", + "CHECK", + "RELEASE" ] }, - "resourceContainer": { - "description": "The 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": { + "limitByIds": { "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 (e.g. GAE, GCE, GKE).", + "description": "LimitType IDs that should be used for checking quota. Key in this map\nshould be a valid LimitType string, and the value is the ID to be used. For\nexample, an entry \u003cUSER, 123\u003e will cause all user quota limits to use 123\nas the user ID. See google/api/quota.proto for the definition of LimitType.\nCLIENT_PROJECT: Not supported.\nUSER: Value of this entry will be used for enforcing user-level quota\n limits. If none specified, caller IP passed in the\n servicecontrol.googleapis.com/caller_ip label will be used instead.\n If the server cannot resolve a value for this LimitType, an error\n will be thrown. No validation will be performed on this ID.\nDeprecated: use servicecontrol.googleapis.com/user label to send user ID.", "type": "object" + } + }, + "id": "QuotaProperties" + }, + "LinearBuckets": { + "description": "Describing buckets with constant width.", + "type": "object", + "properties": { + "offset": { + "format": "double", + "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.", + "type": "number" }, - "logEntries": { - "description": "Represents information to be logged.", + "numFiniteBuckets": { + "format": "int32", + "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.", + "type": "integer" + }, + "width": { + "format": "double", + "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.", + "type": "number" + } + }, + "id": "LinearBuckets" + }, + "AuthenticationInfo": { + "description": "Authentication information for the operation.", + "type": "object", + "properties": { + "principalEmail": { + "description": "The email address of the authenticated user making the request.", + "type": "string" + }, + "authoritySelector": { + "description": "The authority selector specified by the requestor, if any.\nIt is not guaranteed that the principal was allowed to use this authority.", + "type": "string" + } + }, + "id": "AuthenticationInfo" + }, + "AllocateQuotaResponse": { + "description": "Response message for the AllocateQuota method.", + "type": "object", + "properties": { + "operationId": { + "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" + }, + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", + "type": "string" + }, + "allocateErrors": { + "description": "Indicates the decision of the allocate.", "items": { - "$ref": "LogEntry" + "$ref": "QuotaError" }, "type": "array" }, - "userLabels": { - "additionalProperties": { - "type": "string" - }, - "description": "User defined labels for the resource that this operation is associated\nwith.", - "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 allocation. 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 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\"\n\n4. For allocation quota, value for each quota limit associated with\nthe metrics will be specified using the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", "items": { "$ref": "MetricValueSet" }, "type": "array" } }, - "id": "Operation", - "description": "Represents information regarding an operation.", - "type": "object" + "id": "AllocateQuotaResponse" }, - "CheckResponse": { - "id": "CheckResponse", - "description": "Response message for the Check method.", + "ReleaseQuotaRequest": { + "description": "Request message for the ReleaseQuota method.", "type": "object", "properties": { - "checkInfo": { - "description": "Feedback data returned from the server during processing a Check request.", - "$ref": "CheckInfo" - }, - "checkErrors": { - "description": "Indicate the decision of the check.\n\nIf no check errors are present, the service should process the operation.\nOtherwise the service should use the list of errors to determine the\nappropriate action.", - "items": { - "$ref": "CheckError" - }, - "type": "array" - }, - "operationId": { - "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.", - "type": "string" - }, "serviceConfigId": { - "type": "string", - "description": "The actual config id used to process the request." + "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" }, - "quotaInfo": { - "description": "Quota information for the check request associated with this response.\n", - "$ref": "QuotaInfo" + "releaseOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota release." } - } + }, + "id": "ReleaseQuotaRequest" }, - "Status": { + "RequestMetadata": { + "description": "Metadata about the request.", + "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.", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "callerIp": { + "description": "The IP address of the caller.", + "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.", + "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.\n\nNOLINT", "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": "RequestMetadata" }, - "ReportRequest": { - "description": "Request message for the Report method.", + "QuotaError": { "type": "object", "properties": { - "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": { + "description": "Free-form text that provides details on the cause of the error.", "type": "string" }, - "operations": { - "description": "Operations to be reported.\n\nTypically the service should report one operation per request.\nPutting multiple operations into a single request is allowed, but should\nbe used only when multiple operations are natually available at the time\nof the report.\n\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.", + "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" + }, + "code": { + "description": "Error code.", + "type": "string", + "enumDescriptions": [ + "This is never used.", + "Quota allocation failed.\nSame as google.rpc.Code.RESOURCE_EXHAUSTED.", + "Quota release failed. This error is ONLY returned on a NORMAL release.\nMore formally: if a user requests a release of 10 tokens, but only\n5 tokens were previously allocated, in a BEST_EFFORT release, this will\nbe considered a success, 5 tokens will be released, and the result will\nbe \"Ok\". If this is done in NORMAL mode, no tokens will be released,\nand an OUT_OF_RANGE error will be returned.\nSame as google.rpc.Code.OUT_OF_RANGE.", + "Consumer cannot access the service because the service requires active\nbilling.", + "Consumer's project has been marked as deleted (soft deletion).", + "Specified API key is invalid.", + "Specified API Key has expired.", + "Consumer's spatula header is invalid.", + "The consumer's LOAS role is invalid.", + "The consumer's LOAS role has no associated project.", + "The backend server for looking up project id/number is unavailable.", + "The backend server for checking service status is unavailable.", + "The backend server for checking billing status is unavailable.", + "The backend server for checking quota limits is unavailable." + ], + "enum": [ + "UNSPECIFIED", + "RESOURCE_EXHAUSTED", + "OUT_OF_RANGE", + "BILLING_NOT_ACTIVE", + "PROJECT_DELETED", + "API_KEY_INVALID", + "API_KEY_EXPIRED", + "SPATULA_HEADER_INVALID", + "LOAS_ROLE_INVALID", + "NO_LOAS_PROJECT", + "PROJECT_STATUS_UNAVAILABLE", + "SERVICE_STATUS_UNAVAILABLE", + "BILLING_STATUS_UNAVAILABLE", + "QUOTA_SYSTEM_UNAVAILABLE" + ] + } + }, + "id": "QuotaError" + }, + "CheckInfo": { + "type": "object", + "properties": { + "unusedArguments": { + "description": "A list of fields and label keys that are ignored by the server.\nThe client doesn't need to send them for following requests to improve\nperformance and allow better aggregation.", "items": { - "$ref": "Operation" + "type": "string" }, "type": "array" } }, - "id": "ReportRequest" + "id": "CheckInfo" }, - "AuditLog": { + "ReleaseQuotaResponse": { + "description": "Response message for the ReleaseQuota method.", + "type": "object", "properties": { - "response": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "quotaMetrics": { + "description": "Quota metrics to indicate the result of release. Depending on the\nrequest, one or more of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric released amount\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_refund_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For allocation quota, value for each quota limit associated with\nthe metrics will be specified using the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", + "items": { + "$ref": "MetricValueSet" }, - "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" + "type": "array" }, - "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\"", + "operationId": { + "description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", "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\"", + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", "type": "string" }, - "authorizationInfo": { - "description": "Authorization information. If there are multiple\nresources or permissions involved, then there is\none AuthorizationInfo element for each {resource, permission} tuple.", + "releaseErrors": { + "description": "Indicates the decision of the release.", "items": { - "$ref": "AuthorizationInfo" + "$ref": "QuotaError" }, "type": "array" - }, - "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" - }, - "serviceData": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Other service-specific data about the request, response, and other\nactivities.", - "type": "object" - }, - "requestMetadata": { - "description": "Metadata about the operation.", - "$ref": "RequestMetadata" - }, - "numResponseItems": { - "format": "int64", - "description": "The number of items returned from a List or Query API method,\nif applicable.", - "type": "string" - }, - "status": { - "$ref": "Status", - "description": "The status of the overall operation." - }, - "authenticationInfo": { - "$ref": "AuthenticationInfo", - "description": "Authentication information." } }, - "id": "AuditLog", - "description": "Common audit log format for Google Cloud Platform API operations.\n\n", - "type": "object" + "id": "ReleaseQuotaResponse" }, - "LogEntry": { + "AllocateQuotaRequest": { + "description": "Request message for the AllocateQuota method.", "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" + "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" }, - "severity": { - "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.", - "type": "string", + "allocateOperation": { + "description": "Operation that describes the quota allocation.", + "$ref": "QuotaOperation" + }, + "allocationMode": { "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." + "", + "Allocates quota for the amount specified in the service configuration or\nspecified using the quota_metrics. If the amount is higher than the\navailable quota, allocation error will be returned and no quota will be\nallocated.", + "Allocates quota for the amount specified in the service configuration or\nspecified using the quota_metrics. If the amount is higher than the\navailable quota, request does not fail but all available quota will be\nallocated.", + "Only checks if there is enough quota available and does not change the\navailable quota. No lock is placed on the available quota either." ], "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": { - "description": "The log entry payload, represented as a structure that\nis expressed as a JSON object.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "textPayload": { - "description": "The log entry payload, represented as a Unicode string (UTF-8).", + "UNSPECIFIED", + "NORMAL", + "BEST_EFFORT", + "CHECK_ONLY" + ], + "description": "Allocation mode for this operation.\nDeprecated: use QuotaMode inside the QuotaOperation.", "type": "string" - }, - "protoPayload": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + } + }, + "id": "AllocateQuotaRequest" + }, + "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", + "properties": { + "metricValues": { + "description": "The values in this metric.", + "items": { + "$ref": "MetricValue" }, - "description": "The log entry payload, represented as a protocol buffer that is\nexpressed as a JSON object. You can only pass `protoPayload`\nvalues that belong to a set of approved types.", - "type": "object" + "type": "array" }, - "timestamp": { - "format": "google-datetime", - "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.", + "metricName": { + "description": "The metric name defined in the service configuration.", "type": "string" } }, - "id": "LogEntry", - "description": "An individual log entry." + "id": "MetricValueSet" }, - "MetricValue": { + "ReportError": { + "description": "Represents the processing error of one `Operation` in the request.", "type": "object", "properties": { - "boolValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "endTime": { - "format": "google-datetime", - "description": "The end of the time period over which this metric value's measurement\napplies.", + "operationId": { + "description": "The Operation.operation_id value from the request.", "type": "string" }, - "startTime": { - "type": "string", - "format": "google-datetime", - "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." - }, - "moneyValue": { - "$ref": "Money", - "description": "A money value." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.", - "type": "object" - }, - "stringValue": { - "type": "string", - "description": "A text string value." - }, - "doubleValue": { - "type": "number", - "format": "double", - "description": "A double precision floating point value." + "status": { + "$ref": "Status", + "description": "Details of the error when processing the `Operation`." + } + }, + "id": "ReportError" + }, + "CheckError": { + "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.", + "type": "object", + "properties": { + "detail": { + "description": "Free-form text providing details on the error cause of the error.", + "type": "string" }, - "int64Value": { + "code": { + "description": "The error code.", "type": "string", - "format": "int64", - "description": "A signed 64-bit integer value." - }, - "distributionValue": { - "description": "A distribution value.", - "$ref": "Distribution" + "enumDescriptions": [ + "This is never used in `CheckResponse`.", + "The consumer's project id was not found.\nSame 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 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", + "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" + ] } }, - "id": "MetricValue", - "description": "Represents a single metric value." + "id": "CheckError" }, - "Money": { - "description": "Represents an amount of money with its currency type.", + "StartReconciliationRequest": { "type": "object", "properties": { - "nanos": { - "format": "int32", - "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.", - "type": "integer" - }, - "units": { - "format": "int64", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "type": "string" + "reconciliationOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota reconciliation." }, - "currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", + "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": "Money" + "id": "StartReconciliationRequest" }, - "EndReconciliationResponse": { + "QuotaInfo": { + "description": "Contains the quota information for a quota check response.", "type": "object", "properties": { - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation end.", + "limitExceeded": { + "description": "Quota Metrics that have exceeded quota limits.\nFor QuotaGroup-based quota, this is QuotaGroup.name\nFor QuotaLimit-based quota, this is QuotaLimit.name\nSee: google.api.Quota\nDeprecated: Use quota_metrics to get per quota group limit exceeded status.", "items": { - "$ref": "QuotaError" + "type": "string" }, "type": "array" }, - "operationId": { - "description": "The same operation_id value used in the EndReconciliationRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" + "quotaConsumed": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "Map of quota group name to the actual number of tokens consumed. If the\nquota check was not successful, then this will not be populated due to no\nquota consumption.\nDeprecated: Use quota_metrics to get per quota group usage.", + "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.", + "description": "Quota metrics to indicate the usage. Depending on the check request, one or\nmore of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric incremental usage\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For both rate quota and allocation quota, the quota limit reached\ncondition will be specified using the following boolean metric:\n \"serviceruntime.googleapis.com/quota/exceeded\"", "items": { "$ref": "MetricValueSet" }, "type": "array" } }, - "id": "EndReconciliationResponse" + "id": "QuotaInfo" }, - "ExplicitBuckets": { - "description": "Describing buckets with arbitrary user-provided width.", + "CheckRequest": { + "description": "Request message for the Check method.", "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", - "items": { - "format": "double", - "type": "number" - }, - "type": "array" - } - }, - "id": "ExplicitBuckets" - }, - "Distribution": { - "id": "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": { - "explicitBuckets": { - "$ref": "ExplicitBuckets", - "description": "Buckets with arbitrary user-provided width." - }, - "maximum": { - "format": "double", - "description": "The maximum of the population of values. Ignored if `count` is zero.", - "type": "number" - }, - "sumOfSquaredDeviation": { - "format": "double", - "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.", - "type": "number" - }, - "exponentialBuckets": { - "$ref": "ExponentialBuckets", - "description": "Buckets with exponentially growing width." - }, - "minimum": { - "format": "double", - "description": "The minimum of the population of values. Ignored if `count` is zero.", - "type": "number" - }, - "linearBuckets": { - "$ref": "LinearBuckets", - "description": "Buckets with constant width." - }, - "count": { - "type": "string", - "format": "int64", - "description": "The total number of samples in the distribution. Must be \u003e= 0." - }, - "mean": { - "type": "number", - "format": "double", - "description": "The arithmetic mean of the samples in the distribution. If `count` is\nzero then this field must be zero." - }, - "bucketCounts": { - "description": "The number of samples in each histogram bucket. `bucket_counts` are\noptional. If present, they must sum to the `count` value.\n\nThe buckets are defined below in `bucket_option`. There are N buckets.\n`bucket_counts[0]` is the number of samples in the underflow bucket.\n`bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples\nin each of the finite buckets. And `bucket_counts[N] is the number\nof samples in the overflow bucket. See the comments of `bucket_option`\nbelow for more details.\n\nAny suffix of trailing zeros may be omitted.", - "items": { - "format": "int64", - "type": "string" - }, - "type": "array" - } - } - }, - "ExponentialBuckets": { - "properties": { - "growthFactor": { - "format": "double", - "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.", - "type": "number" - }, - "scale": { - "format": "double", - "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.", - "type": "number" - }, - "numFiniteBuckets": { - "format": "int32", - "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.", - "type": "integer" - } - }, - "id": "ExponentialBuckets", - "description": "Describing buckets with exponentially growing width.", - "type": "object" - }, - "AuthorizationInfo": { - "description": "Authorization information for the operation.", - "type": "object", - "properties": { - "resource": { - "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID", - "type": "string" + "skipActivationCheck": { + "description": "Indicates if service activation check should be skipped for this request.\nDefault behavior is to perform the check and apply relevant quota.", + "type": "boolean" }, - "granted": { - "description": "Whether or not authorization for `resource` and `permission`\nwas granted.", + "requestProjectSettings": { + "description": "Requests the project settings to be returned as part of the check response.", "type": "boolean" }, - "permission": { - "description": "The required IAM permission.", + "operation": { + "description": "The operation to be checked.", + "$ref": "Operation" + }, + "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": "AuthorizationInfo" + "id": "CheckRequest" }, - "StartReconciliationResponse": { + "QuotaOperation": { + "description": "Represents information regarding a quota operation.", "type": "object", "properties": { "quotaMetrics": { - "description": "Metric values as tracked by One Platform before the start of\nreconciliation. The following metrics will be included:\n\n1. Per quota metric total usage will be specified using the following gauge\nmetric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n2. Value for each quota limit associated with the metrics will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", + "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.", "items": { "$ref": "MetricValueSet" }, "type": "array" }, - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation start.", - "items": { - "$ref": "QuotaError" + "labels": { + "additionalProperties": { + "type": "string" }, - "type": "array" + "description": "Labels describing the operation.", + "type": "object" + }, + "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" }, "operationId": { - "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", + "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls AllocateQuota\nand ReleaseQuota on the same operation, the two calls should carry the\nsame ID.\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" }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", + "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. This field is not\nrequired if the quota operation is performed on non-API resources.\n\nExample of an RPC method name:\n google.example.library.v1.LibraryService.CreateShelf", "type": "string" - } - }, - "id": "StartReconciliationResponse" - }, - "QuotaProperties": { - "description": "Represents the properties needed for quota operations.", - "type": "object", - "properties": { + }, "quotaMode": { + "description": "Quota mode for this operation.", + "type": "string", "enumDescriptions": [ - "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation fails and returns\nerror.", - "Decreases available quota by the cost specified for the operation.\nIf cost is higher than available quota, operation does not fail and\navailable quota goes down to zero but it returns error.", - "Does not change any available quota. Only checks if there is enough\nquota.\nNo lock is placed on the checked tokens neither.", - "Increases available quota by the operation cost specified for the\noperation." + "", + "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.\nFor ReleaseQuota request, this mode is supported only for precise quota\nlimits. In this case, this operation releases quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the release can make used quota negative, release error\nwill be returned and no quota will be released.", + "For AllocateQuota request, this mode is supported only for imprecise\nquota limits. In this case, the operation allocates quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the amount is higher than the available quota, request does\nnot fail but all available quota will be allocated.\nFor ReleaseQuota request, this mode is supported for both precise quota\nlimits and imprecise quota limits. In this case, this operation releases\nquota for the amount specified in the service configuration or specified\nusing the quota metrics. If the release can make used quota\nnegative, request does not fail but only the used quota will be\nreleased. After the ReleaseQuota request completes, the used quota\nwill be 0, and never goes to negative.", + "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. Not supported for ReleaseQuota request." ], "enum": [ - "ACQUIRE", - "ACQUIRE_BEST_EFFORT", - "CHECK", - "RELEASE" - ], - "description": "Quota mode for this operation.", - "type": "string" - }, - "limitByIds": { - "additionalProperties": { - "type": "string" - }, - "description": "LimitType IDs that should be used for checking quota. Key in this map\nshould be a valid LimitType string, and the value is the ID to be used. For\nexample, an entry \u003cUSER, 123\u003e will cause all user quota limits to use 123\nas the user ID. See google/api/quota.proto for the definition of LimitType.\nCLIENT_PROJECT: Not supported.\nUSER: Value of this entry will be used for enforcing user-level quota\n limits. If none specified, caller IP passed in the\n servicecontrol.googleapis.com/caller_ip label will be used instead.\n If the server cannot resolve a value for this LimitType, an error\n will be thrown. No validation will be performed on this ID.\nDeprecated: use servicecontrol.googleapis.com/user label to send user ID.", - "type": "object" + "UNSPECIFIED", + "NORMAL", + "BEST_EFFORT", + "CHECK_ONLY" + ] } }, - "id": "QuotaProperties" - }, - "LinearBuckets": { - "id": "LinearBuckets", - "description": "Describing buckets with constant width.", - "type": "object", - "properties": { - "offset": { - "type": "number", - "format": "double", - "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." - }, - "numFiniteBuckets": { - "type": "integer", - "format": "int32", - "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." - }, - "width": { - "format": "double", - "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.", - "type": "number" - } - } + "id": "QuotaOperation" }, - "AuthenticationInfo": { - "description": "Authentication information for the operation.", + "EndReconciliationRequest": { "type": "object", "properties": { - "principalEmail": { - "description": "The email address of the authenticated user making the request.", + "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" }, - "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" + "reconciliationOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota reconciliation." } }, - "id": "AuthenticationInfo" + "id": "EndReconciliationRequest" }, - "AllocateQuotaResponse": { - "description": "Response message for the AllocateQuota method.", + "ReportInfo": { "type": "object", "properties": { "operationId": { - "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", + "description": "The Operation.operation_id value from the request.", "type": "string" }, - "allocateErrors": { - "description": "Indicates the decision of the allocate.", - "items": { - "$ref": "QuotaError" - }, - "type": "array" - }, - "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. 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\"\n\n4. For allocation quota, value for each quota limit associated with\nthe metrics will be specified using the following gauge metric:\n \"serviceruntime.googleapis.com/quota/limit\"", - "items": { - "$ref": "MetricValueSet" - }, - "type": "array" + "quotaInfo": { + "description": "Quota usage info when processing the `Operation`.", + "$ref": "QuotaInfo" } }, - "id": "AllocateQuotaResponse" + "id": "ReportInfo" }, - "ReleaseQuotaRequest": { - "description": "Request message for the ReleaseQuota method.", + "Operation": { + "description": "Represents information regarding an operation.", "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.", + "quotaProperties": { + "$ref": "QuotaProperties", + "description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request." + }, + "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" }, - "releaseOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota release." - } - }, - "id": "ReleaseQuotaRequest" - }, - "QuotaError": { - "type": "object", - "properties": { - "description": { - "description": "Free-form text that provides details on the cause of the error.", + "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" }, - "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\".", + "operationName": { + "description": "Fully qualified name of the operation. Reserved for future use.", "type": "string" }, - "code": { - "enum": [ - "UNSPECIFIED", - "RESOURCE_EXHAUSTED", - "OUT_OF_RANGE", - "BILLING_NOT_ACTIVE", - "PROJECT_DELETED", - "API_KEY_INVALID", - "API_KEY_EXPIRED", - "SPATULA_HEADER_INVALID", - "LOAS_ROLE_INVALID", - "NO_LOAS_PROJECT", - "PROJECT_STATUS_UNAVAILABLE", - "SERVICE_STATUS_UNAVAILABLE", - "BILLING_STATUS_UNAVAILABLE", - "QUOTA_SYSTEM_UNAVAILABLE" - ], - "description": "Error code.", - "type": "string", + "endTime": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Required. Start time of the operation.", + "type": "string" + }, + "importance": { "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." - ] - } - }, - "id": "QuotaError" - }, - "RequestMetadata": { - "description": "Metadata about the request.", - "type": "object", - "properties": { - "callerIp": { - "description": "The IP address of the caller.", + "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" }, - "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.\n\nNOLINT", + "resourceContainer": { + "description": "The 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" - } - }, - "id": "RequestMetadata" - }, - "CheckInfo": { - "type": "object", - "properties": { - "unusedArguments": { + }, + "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 (e.g. GAE, GCE, GKE).", + "type": "object" + }, + "logEntries": { + "description": "Represents information to be logged.", "items": { + "$ref": "LogEntry" + }, + "type": "array" + }, + "userLabels": { + "description": "User defined labels for the resource that this operation is associated\nwith.", + "type": "object", + "additionalProperties": { "type": "string" + } + }, + "metricValueSets": { + "description": "Represents information about this operation. Each MetricValueSet\ncorresponds to a metric defined in the service configuration.\nThe data type used in the MetricValueSet must agree with\nthe data type specified in the metric definition.\n\nWithin a single operation, it is not allowed to have more than one\nMetricValue instances that have the same metric names and identical\nlabel value combinations. If a request has such duplicated MetricValue\ninstances, the entire request is rejected with\nan invalid argument error.", + "items": { + "$ref": "MetricValueSet" }, - "type": "array", - "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" } }, - "id": "CheckInfo" + "id": "Operation" }, - "ReleaseQuotaResponse": { - "description": "Response message for the ReleaseQuota method.", + "ReportResponse": { + "description": "Response message for the Report method.", "type": "object", "properties": { - "releaseErrors": { - "description": "Indicates the decision of the release.", + "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", "items": { - "$ref": "QuotaError" + "$ref": "ReportInfo" }, "type": "array" }, - "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\"", + "serviceConfigId": { + "description": "The actual config id used to process the request.", + "type": "string" + }, + "reportErrors": { + "description": "Partial failures, one for each `Operation` in the request that failed\nprocessing. There are three possible combinations of the RPC status:\n\n1. The combination of a successful RPC status and an empty `report_errors`\n list indicates a complete success where all `Operations` in the\n request are processed successfully.\n2. The combination of a successful RPC status and a non-empty\n `report_errors` list indicates a partial success where some\n `Operations` in the request succeeded. Each\n `Operation` that failed processing has a corresponding item\n in this list.\n3. A failed RPC status indicates a general non-deterministic failure.\n When this happens, it's impossible to know which of the\n 'Operations' in the request succeeded or failed.", "items": { - "$ref": "MetricValueSet" + "$ref": "ReportError" }, "type": "array" - }, - "operationId": { - "description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" - }, - "serviceConfigId": { - "type": "string", - "description": "ID of the actual config used to process the request." } }, - "id": "ReleaseQuotaResponse" + "id": "ReportResponse" }, - "AllocateQuotaRequest": { - "description": "Request message for the AllocateQuota method.", + "CheckResponse": { + "description": "Response message for the Check method.", "type": "object", "properties": { - "allocationMode": { - "enum": [ - "UNSPECIFIED", - "NORMAL", - "BEST_EFFORT", - "CHECK_ONLY" - ], - "description": "Allocation mode for this operation.\nDeprecated: use QuotaMode inside the QuotaOperation.", - "type": "string", - "enumDescriptions": [ - "", - "Allocates quota for the amount specified in the service configuration or\nspecified using the quota_metrics. If the amount is higher than the\navailable quota, allocation error will be returned and no quota will be\nallocated.", - "Allocates quota for the amount specified in the service configuration or\nspecified using the quota_metrics. If the amount is higher than the\navailable quota, request does not fail but all available quota will be\nallocated.", - "Only checks if there is enough quota available and does not change the\navailable quota. No lock is placed on the available quota either." - ] + "checkInfo": { + "$ref": "CheckInfo", + "description": "Feedback data returned from the server during processing a Check request." + }, + "checkErrors": { + "description": "Indicate the decision of the check.\n\nIf no check errors are present, the service should process the operation.\nOtherwise the service should use the list of errors to determine the\nappropriate action.", + "items": { + "$ref": "CheckError" + }, + "type": "array" + }, + "operationId": { + "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics 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.", + "description": "The actual config id used to process the request.", "type": "string" }, - "allocateOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota allocation." + "quotaInfo": { + "$ref": "QuotaInfo", + "description": "Quota information for the check request associated with this response.\n" } }, - "id": "AllocateQuotaRequest" + "id": "CheckResponse" }, - "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.", + "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": { - "metricName": { - "description": "The metric name defined in the service configuration.", + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" }, - "metricValues": { - "description": "The values in this metric.", + "details": { + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "$ref": "MetricValue" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, "type": "array" } }, - "id": "MetricValueSet" + "id": "Status" }, - "ReportError": { - "description": "Represents the processing error of one `Operation` in the request.", + "ReportRequest": { + "description": "Request message for the Report method.", "type": "object", "properties": { - "status": { - "$ref": "Status", - "description": "Details of the error when processing the `Operation`." - }, - "operationId": { - "description": "The Operation.operation_id value from the request.", + "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" + }, + "operations": { + "description": "Operations to be reported.\n\nTypically the service should report one operation per request.\nPutting multiple operations into a single request is allowed, but should\nbe used only when multiple operations are natually available at the time\nof the report.\n\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.", + "items": { + "$ref": "Operation" + }, + "type": "array" } }, - "id": "ReportError" + "id": "ReportRequest" }, - "CheckError": { - "id": "CheckError", - "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.", + "LogEntry": { + "description": "An individual log entry.", "type": "object", "properties": { - "code": { + "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": [ - "This is never used in `CheckResponse`.", - "The consumer's project id was not found.\nSame 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 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." + "(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": [ - "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", - "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.", + "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" }, - "detail": { - "description": "Free-form text providing details on the error cause of the error.", + "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).", + "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. You can only pass `protoPayload`\nvalues that belong to a set of approved types.", + "type": "object" + }, + "timestamp": { + "format": "google-datetime", + "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.", "type": "string" } - } + }, + "id": "LogEntry" }, - "StartReconciliationRequest": { + "AuditLog": { + "description": "Common audit log format for Google Cloud Platform API operations.\n\n", + "type": "object", "properties": { - "reconciliationOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota reconciliation." + "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" }, - "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.", + "serviceData": { + "description": "Other 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" + } + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Metadata about the operation." + }, + "numResponseItems": { + "format": "int64", + "description": "The number of items returned from a List or Query API method,\nif applicable.", + "type": "string" + }, + "status": { + "$ref": "Status", + "description": "The status of the overall operation." + }, + "authenticationInfo": { + "description": "Authentication information.", + "$ref": "AuthenticationInfo" + }, + "serviceName": { + "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.", "type": "string" + }, + "response": { + "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", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "methodName": { + "description": "The name of the service method or operation.\nFor API calls, this should be the name of the API method.\nFor example,\n\n \"google.datastore.v1.Datastore.RunQuery\"\n \"google.logging.v1.LoggingService.DeleteLog\"", + "type": "string" + }, + "resourceName": { + "description": "The resource or collection that is the target of the operation.\nThe name is a scheme-less URI, not including the API service name.\nFor example:\n\n \"shelves/SHELF_ID/books\"\n \"shelves/SHELF_ID/books/BOOK_ID\"", + "type": "string" + }, + "authorizationInfo": { + "description": "Authorization information. If there are multiple\nresources or permissions involved, then there is\none AuthorizationInfo element for each {resource, permission} tuple.", + "items": { + "$ref": "AuthorizationInfo" + }, + "type": "array" } }, - "id": "StartReconciliationRequest", - "type": "object" + "id": "AuditLog" }, - "QuotaInfo": { + "MetricValue": { + "description": "Represents a single metric value.", + "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.\nDeprecated: Use quota_metrics to get per quota group usage.", + "moneyValue": { + "$ref": "Money", + "description": "A money value." + }, + "labels": { + "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.", "type": "object", "additionalProperties": { - "format": "int32", - "type": "integer" + "type": "string" } }, - "quotaMetrics": { - "description": "Quota metrics to indicate the usage. Depending on the check request, one or\nmore of the following metrics will be included:\n\n1. For rate quota, per quota group or per quota metric incremental usage\nwill be specified using the following delta metric:\n \"serviceruntime.googleapis.com/api/consumer/quota_used_count\"\n\n2. For allocation quota, per quota metric total usage will be specified\nusing the following gauge metric:\n \"serviceruntime.googleapis.com/allocation/consumer/quota_used_count\"\n\n3. For both rate quota and allocation quota, the quota limit reached\ncondition will be specified using the following boolean metric:\n \"serviceruntime.googleapis.com/quota/exceeded\"", - "items": { - "$ref": "MetricValueSet" - }, - "type": "array" + "stringValue": { + "description": "A text string value.", + "type": "string" + }, + "doubleValue": { + "format": "double", + "description": "A double precision floating point value.", + "type": "number" + }, + "int64Value": { + "format": "int64", + "description": "A signed 64-bit integer value.", + "type": "string" + }, + "distributionValue": { + "$ref": "Distribution", + "description": "A distribution value." }, - "limitExceeded": { - "description": "Quota Metrics that have exceeded quota limits.\nFor QuotaGroup-based quota, this is QuotaGroup.name\nFor QuotaLimit-based quota, this is QuotaLimit.name\nSee: google.api.Quota\nDeprecated: Use quota_metrics to get per quota group limit exceeded status.", - "items": { - "type": "string" - }, - "type": "array" + "boolValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "endTime": { + "format": "google-datetime", + "description": "The end of the time period over which this metric value's measurement\napplies.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "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.", + "type": "string" } }, - "id": "QuotaInfo", - "description": "Contains the quota information for a quota check response.", - "type": "object" + "id": "MetricValue" } }, - "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": "Service Control", "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/servicecontrol": { "description": "Manage your Google Service Control data" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } } @@ -1091,74 +1101,78 @@ "resources": { "services": { "methods": { - "report": { - "response": { - "$ref": "ReportResponse" + "check": { + "request": { + "$ref": "CheckRequest" }, + "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\n\nNOTE: the `CheckRequest` has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + "httpMethod": "POST", "parameterOrder": [ "serviceName" ], - "httpMethod": "POST", + "response": { + "$ref": "CheckResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ], "parameters": { "serviceName": { + "location": "path", "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:report", - "id": "servicecontrol.services.report", - "path": "v1/services/{serviceName}:report", - "description": "Reports operation results to Google Service Control, such as logs and\nmetrics. It should be called after an operation is completed.\n\nIf feasible, the client should aggregate reporting data for up to 5\nseconds to reduce API traffic. Limiting aggregation to 5 seconds is to\nreduce data loss during client crashes. Clients should carefully choose\nthe aggregation time window to avoid data loss risk more than 0.01%\nfor business and compliance reasons.\n\nNOTE: the `ReportRequest` has the size limit of 1MB.\n\nThis method requires the `servicemanagement.services.report` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", - "request": { - "$ref": "ReportRequest" - } + "flatPath": "v1/services/{serviceName}:check", + "path": "v1/services/{serviceName}:check", + "id": "servicecontrol.services.check" }, - "allocateQuota": { + "releaseQuota": { + "request": { + "$ref": "ReleaseQuotaRequest" + }, + "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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.", "response": { - "$ref": "AllocateQuotaResponse" + "$ref": "ReleaseQuotaResponse" }, "parameterOrder": [ "serviceName" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ], "parameters": { "serviceName": { - "location": "path", "description": "Name of the service as specified in the service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", "type": "string", - "required": true + "required": true, + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:allocateQuota", - "id": "servicecontrol.services.allocateQuota", - "path": "v1/services/{serviceName}:allocateQuota", - "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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.", - "request": { - "$ref": "AllocateQuotaRequest" - } + "flatPath": "v1/services/{serviceName}:releaseQuota", + "id": "servicecontrol.services.releaseQuota", + "path": "v1/services/{serviceName}:releaseQuota" }, - "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).", + "endReconciliation": { "request": { - "$ref": "StartReconciliationRequest" + "$ref": "EndReconciliationRequest" }, + "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", "response": { - "$ref": "StartReconciliationResponse" + "$ref": "EndReconciliationResponse" }, "parameterOrder": [ "serviceName" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ], "parameters": { "serviceName": { "location": "path", @@ -1167,49 +1181,41 @@ "required": true } }, - "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" + "flatPath": "v1/services/{serviceName}:endReconciliation", + "id": "servicecontrol.services.endReconciliation", + "path": "v1/services/{serviceName}:endReconciliation" }, - "check": { - "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\n\nNOTE: the `CheckRequest` has the size limit of 64KB.\n\nThis method requires the `servicemanagement.services.check` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", - "request": { - "$ref": "CheckRequest" + "report": { + "response": { + "$ref": "ReportResponse" }, - "httpMethod": "POST", "parameterOrder": [ "serviceName" ], - "response": { - "$ref": "CheckResponse" - }, + "httpMethod": "POST", "parameters": { "serviceName": { - "location": "path", "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.", "type": "string", - "required": true + "required": true, + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/servicecontrol" ], - "flatPath": "v1/services/{serviceName}:check", - "path": "v1/services/{serviceName}:check", - "id": "servicecontrol.services.check" - }, - "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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.", + "flatPath": "v1/services/{serviceName}:report", + "id": "servicecontrol.services.report", + "path": "v1/services/{serviceName}:report", + "description": "Reports operation results to Google Service Control, such as logs and\nmetrics. It should be called after an operation is completed.\n\nIf feasible, the client should aggregate reporting data for up to 5\nseconds to reduce API traffic. Limiting aggregation to 5 seconds is to\nreduce data loss during client crashes. Clients should carefully choose\nthe aggregation time window to avoid data loss risk more than 0.01%\nfor business and compliance reasons.\n\nNOTE: the `ReportRequest` has the size limit of 1MB.\n\nThis method requires the `servicemanagement.services.report` permission\non the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", "request": { - "$ref": "ReleaseQuotaRequest" - }, + "$ref": "ReportRequest" + } + }, + "allocateQuota": { "response": { - "$ref": "ReleaseQuotaResponse" + "$ref": "AllocateQuotaResponse" }, "parameterOrder": [ "serviceName" @@ -1227,43 +1233,63 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/servicecontrol" ], - "flatPath": "v1/services/{serviceName}:releaseQuota", - "id": "servicecontrol.services.releaseQuota", - "path": "v1/services/{serviceName}:releaseQuota" + "flatPath": "v1/services/{serviceName}:allocateQuota", + "id": "servicecontrol.services.allocateQuota", + "path": "v1/services/{serviceName}: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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.", + "request": { + "$ref": "AllocateQuotaRequest" + } }, - "endReconciliation": { + "startReconciliation": { "response": { - "$ref": "EndReconciliationResponse" + "$ref": "StartReconciliationResponse" }, "parameterOrder": [ "serviceName" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ], "parameters": { "serviceName": { - "type": "string", - "required": true, "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." + "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.", + "type": "string", + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], - "flatPath": "v1/services/{serviceName}:endReconciliation", - "id": "servicecontrol.services.endReconciliation", - "path": "v1/services/{serviceName}:endReconciliation", - "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).", + "flatPath": "v1/services/{serviceName}:startReconciliation", + "id": "servicecontrol.services.startReconciliation", + "path": "v1/services/{serviceName}:startReconciliation", "request": { - "$ref": "EndReconciliationRequest" - } + "$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)." } } } }, "parameters": { + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" + }, "$.xgafv": { + "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", @@ -1273,15 +1299,11 @@ "enum": [ "1", "2" - ], - "description": "V1 error format." - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" + ] }, "alt": { + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -1293,24 +1315,22 @@ "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" }, "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" + "type": "string", + "location": "query" }, "pp": { "location": "query", @@ -1318,15 +1338,15 @@ "default": "true", "type": "boolean" }, - "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", - "location": "query" + "type": "string" + }, + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, "upload_protocol": { "location": "query", @@ -1334,31 +1354,11 @@ "type": "string" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean" - }, - "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\")." + "type": "boolean", + "location": "query" } }, - "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", - "basePath": "", - "id": "servicecontrol:v1", - "documentationLink": "https://cloud.google.com/service-control/", - "revision": "20170712", - "discoveryVersion": "v1", - "version_module": "True" + "version": "v1" } diff --git a/DiscoveryJson/servicemanagement_v1.json b/DiscoveryJson/servicemanagement_v1.json index 6967f42c68..b85ab4be7e 100644 --- a/DiscoveryJson/servicemanagement_v1.json +++ b/DiscoveryJson/servicemanagement_v1.json @@ -1,1102 +1,604 @@ { - "ownerDomain": "google.com", - "name": "servicemanagement", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Google Service Management API", - "ownerName": "Google", - "resources": { - "services": { - "methods": { - "get": { - "description": "Gets a managed service. Authentication is required unless the service is\npublic.", - "httpMethod": "GET", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "ManagedService" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/services/{serviceName}", - "path": "v1/services/{serviceName}", - "id": "servicemanagement.services.get" + "schemas": { + "ManagedService": { + "id": "ManagedService", + "description": "The full representation of a Service that is managed by\nGoogle Service Management.", + "type": "object", + "properties": { + "producerProjectId": { + "description": "ID of the project that produces and owns this service.", + "type": "string" }, - "testIamPermissions": { - "request": { - "$ref": "TestIamPermissionsRequest" + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", + "type": "string" + } + } + }, + "UsageRule": { + "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", + "type": "object", + "properties": { + "skipServiceControl": { + "description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled.", + "type": "boolean" + }, + "allowUnregisteredCalls": { + "description": "True, if the method allows unregistered calls; false otherwise.", + "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" + } + } + }, + "TrafficPercentStrategy": { + "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 }", + "type": "object", + "properties": { + "percentages": { + "additionalProperties": { + "format": "double", + "type": "number" }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" + "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" + } + } + }, + "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": { + "type": "string", + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth" + } + }, + "id": "AuthRequirement" + }, + "Condition": { + "description": "A condition to be met.", + "type": "object", + "properties": { + "op": { + "enum": [ + "NO_OP", + "EQUALS", + "NOT_EQUALS", + "IN", + "NOT_IN", + "DISCHARGED" ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" + "description": "An operator to apply the subject with.", + "type": "string", + "enumDescriptions": [ + "Default no-op.", + "DEPRECATED. Use IN instead.", + "DEPRECATED. Use NOT_IN instead.", + "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", + "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", + "Subject is discharged" + ] + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" + }, + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "sys": { + "enum": [ + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" ], - "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.", - "type": "string", - "required": true, - "pattern": "^services/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/services/{servicesId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "servicemanagement.services.testIamPermissions" + "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", + "type": "string", + "enumDescriptions": [ + "Default non-attribute type", + "Region of the resource", + "Service name", + "Resource name", + "IP address of the caller" + ] }, - "getConfig": { - "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "serviceName" + "iam": { + "enumDescriptions": [ + "Default non-attribute.", + "Either principal or (if present) authority selector.", + "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", + "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", + "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." ], - "httpMethod": "GET", - "parameters": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true, - "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" + "enum": [ + "NO_ATTR", + "AUTHORITY", + "ATTRIBUTION", + "APPROVER", + "JUSTIFICATION_TYPE" ], - "flatPath": "v1/services/{serviceName}/config", - "id": "servicemanagement.services.getConfig", - "path": "v1/services/{serviceName}/config", - "description": "Gets a service configuration (version) for a managed service." + "description": "Trusted attributes supplied by the IAM system.", + "type": "string" }, - "enable": { - "id": "servicemanagement.services.enable", - "path": "v1/services/{serviceName}: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" + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "serviceName": { - "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail.", - "type": "string", - "required": true, - "location": "path" - } + "type": "array" + } + }, + "id": "Condition" + }, + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "type": "object", + "properties": { + "pages": { + "items": { + "$ref": "Page" }, - "flatPath": "v1/services/{serviceName}:enable" + "type": "array", + "description": "The top level pages for the documentation set." }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "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`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/services/{serviceName}", - "path": "v1/services/{serviceName}", - "id": "servicemanagement.services.delete", - "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e" + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "type": "string" }, - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" + "documentationRootUrl": { + "type": "string", + "description": "The URL to the root of documentation." + }, + "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" + }, + "rules": { + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "DocumentationRule" }, - "parameters": { - "resource": { - "type": "string", - "required": true, - "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." - } + "type": "array" + } + }, + "id": "Documentation" + }, + "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.", + "items": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{servicesId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "servicemanagement.services.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } + "type": "array" }, - "disable": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" + "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" ], - "httpMethod": "POST", - "parameters": { - "serviceName": { - "type": "string", - "required": true, - "location": "path", - "description": "Name of the service to disable. Specifying an unknown service name\nwill cause the request to fail." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" ], - "flatPath": "v1/services/{serviceName}:disable", - "id": "servicemanagement.services.disable", - "path": "v1/services/{serviceName}:disable", - "description": "Disables a service for a project, so it can no longer be\nbe used for the project. It prevents accidental usage that may cause\nunexpected billing charges or security leaks.\n\nOperation\u003cresponse: DisableServiceResponse\u003e", - "request": { - "$ref": "DisableServiceRequest" - } + "description": "The log type that this config enables." + } + }, + "id": "AuditLogConfig" + }, + "ConfigSource": { + "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.", + "type": "object", + "properties": { + "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" }, - "getIamPolicy": { - "request": { - "$ref": "GetIamPolicyRequest" - }, - "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" + "files": { + "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", + "items": { + "$ref": "ConfigFile" }, - "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/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } + "type": "array" + } + }, + "id": "ConfigSource" + }, + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", + "type": "object", + "properties": { + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "deadline": { + "format": "double", + "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.", + "type": "number" + }, + "minDeadline": { + "type": "number", + "format": "double", + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected." + }, + "address": { + "description": "The address of the API backend.", + "type": "string" + } + }, + "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": { + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "requirements": { + "description": "Requirements for additional authentication providers.", + "items": { + "$ref": "AuthRequirement" }, - "flatPath": "v1/services/{servicesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "servicemanagement.services.getIamPolicy" + "type": "array" }, - "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", - "httpMethod": "POST", - "response": { - "$ref": "Operation" + "allowWithoutCredential": { + "type": "boolean", + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject." + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "id": "AuthenticationRule" + }, + "Policy": { + "type": "object", + "properties": { + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "iamOwned": { + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" }, - "parameterOrder": [ - "serviceName" - ], - "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`.", - "type": "string", - "required": true - } + "type": "array" + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" }, - "flatPath": "v1/services/{serviceName}:undelete", - "path": "v1/services/{serviceName}:undelete", - "id": "servicemanagement.services.undelete" + "type": "array" }, - "list": { - "description": "Lists managed services.\n\nReturns all public services. For authenticated users, also returns all\nservices the calling user has \"servicemanagement.services.get\" permission\nfor.\n\n**BETA:** If the caller specifies the `consumer_id`, it returns only the\nservices enabled on the consumer. The `consumer_id` must have the format\nof \"project:{PROJECT-ID}\".", - "response": { - "$ref": "ListServicesResponse" + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "consumerId": { - "type": "string", - "location": "query", - "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e" - }, - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "Requested size of the next page of data.", - "type": "integer", - "location": "query" - }, - "producerProjectId": { - "description": "Include services produced by the specified project.", - "type": "string", - "location": "query" - } + "type": "array" + } + }, + "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)." + }, + "UndeleteServiceResponse": { + "description": "Response message for UndeleteService method.", + "type": "object", + "properties": { + "service": { + "$ref": "ManagedService", + "description": "Revived service resource." + } + }, + "id": "UndeleteServiceResponse" + }, + "Api": { + "description": "Api is a light-weight descriptor for a protocol buffer service.", + "type": "object", + "properties": { + "methods": { + "description": "The methods of this api, in unspecified order.", + "items": { + "$ref": "Method" }, - "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" + "type": "array" + }, + "name": { + "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name.", + "type": "string" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "syntax": { + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" ], - "flatPath": "v1/services", - "id": "servicemanagement.services.list", - "path": "v1/services" + "description": "The source syntax of the service.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, - "create": { - "request": { - "$ref": "ManagedService" + "version": { + "type": "string", + "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided 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\nAPI, 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, none-GA apis.\n" + }, + "mixins": { + "description": "Included APIs. See Mixin.", + "items": { + "$ref": "Mixin" }, - "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" + "type": "array" + }, + "options": { + "description": "Any metadata attached to the API.", + "items": { + "$ref": "Option" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": {}, - "flatPath": "v1/services", - "path": "v1/services", - "id": "servicemanagement.services.create" + "type": "array" + } + }, + "id": "Api" + }, + "DataAccessOptions": { + "type": "object", + "properties": {}, + "id": "DataAccessOptions", + "description": "Write a Data Access (Gin) log" + }, + "MetricRule": { + "type": "object", + "properties": { + "metricCosts": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.", + "type": "object" }, - "generateConfigReport": { - "flatPath": "v1/services:generateConfigReport", - "id": "servicemanagement.services.generateConfigReport", - "path": "v1/services:generateConfigReport", - "request": { - "$ref": "GenerateConfigReportRequest" + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "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." + }, + "Authentication": { + "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth", + "type": "object", + "properties": { + "providers": { + "description": "Defines a set of authentication providers that a service supports.", + "items": { + "$ref": "AuthProvider" }, - "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.", - "response": { - "$ref": "GenerateConfigReportResponse" + "type": "array" + }, + "rules": { + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "AuthenticationRule" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": {} + "type": "array" } }, - "resources": { - "consumers": { - "methods": { - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true, - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path" - } - }, - "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", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } - }, - "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/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.", - "type": "string", - "required": true, - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:testIamPermissions", - "id": "servicemanagement.services.consumers.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" - }, - "getIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path", - "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "servicemanagement.services.consumers.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" - } - } - } + "id": "Authentication" + }, + "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" }, - "rollouts": { - "methods": { - "create": { - "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOperation\u003cresponse: Rollout\u003e", - "request": { - "$ref": "Rollout" - }, - "httpMethod": "POST", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/services/{serviceName}/rollouts", - "path": "v1/services/{serviceName}/rollouts", - "id": "servicemanagement.services.rollouts.create" - }, - "get": { - "response": { - "$ref": "Rollout" - }, - "parameterOrder": [ - "serviceName", - "rolloutId" - ], - "httpMethod": "GET", - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - }, - "rolloutId": { - "location": "path", - "description": "The id of the rollout resource.", - "type": "string", - "required": true - } - }, - "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." - }, - "list": { - "path": "v1/services/{serviceName}/rollouts", - "id": "servicemanagement.services.rollouts.list", - "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" - ], - "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "The max number of items to include in the response list.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "Use `filter` to return subset of rollouts.\nThe following filters are supported:\n -- To limit the results to only those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS',\n use filter='status=SUCCESS'\n -- To limit the results to those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'CANCELLED'\n or 'FAILED', use filter='status=CANCELLED OR status=FAILED'", - "type": "string" - }, - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - }, - "pageToken": { - "location": "query", - "description": "The token of the page to retrieve.", - "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}/rollouts" - } - } + "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" }, - "configs": { - "methods": { - "submit": { - "request": { - "$ref": "SubmitConfigSourceRequest" - }, - "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "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`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/services/{serviceName}/configs:submit", - "id": "servicemanagement.services.configs.submit", - "path": "v1/services/{serviceName}/configs:submit" - }, - "get": { - "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": { - "configId": { - "location": "path", - "description": "The id of the service configuration resource.", - "type": "string", - "required": true - }, - "view": { - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Specifies which parts of the Service Config should be returned in the\nresponse." - }, - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - } - }, - "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." - }, - "list": { - "response": { - "$ref": "ListServiceConfigsResponse" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "GET", - "parameters": { - "serviceName": { - "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", - "type": "string", - "required": true - }, - "pageToken": { - "location": "query", - "description": "The token of the page to retrieve.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The max number of items to include in the response list.", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/service.management", - "https://www.googleapis.com/auth/service.management.readonly" - ], - "flatPath": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.list", - "path": "v1/services/{serviceName}/configs", - "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "Service" - }, - "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`.", - "type": "string", - "required": true - } - }, - "flatPath": "v1/services/{serviceName}/configs", - "path": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.create", - "request": { - "$ref": "Service" - }, - "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout." - } - } + "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": { + "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." } - } + }, + "id": "Operation" }, - "operations": { - "methods": { - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true, - "pattern": "^operations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/operations/{operationsId}", - "id": "servicemanagement.operations.get", - "path": "v1/{+name}", - "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice." - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "description": "Not used.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.", - "type": "integer" - }, - "filter": { - "description": "A string for filtering Operations.\n The following filter fields are supported:\n\n * serviceName: Required. Only `=` operator is allowed.\n * startTime: The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status: Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples:\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/operations", - "path": "v1/operations", - "id": "servicemanagement.operations.list", - "description": "Lists service operations that match the specified filter in the request." - } - } - } - }, - "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" - }, - "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" - }, - "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.", - "default": "true", - "type": "boolean", - "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": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "location": "query" - } - }, - "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", - "basePath": "", - "documentationLink": "https://cloud.google.com/service-management/", - "revision": "20170707", - "id": "servicemanagement:v1", - "discoveryVersion": "v1", - "schemas": { - "Api": { - "description": "Api is a light-weight descriptor for a protocol buffer service.", - "type": "object", + "Page": { "properties": { - "syntax": { - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of the service.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ] - }, - "sourceContext": { - "description": "Source context for the protocol buffer service represented by this\nmessage.", - "$ref": "SourceContext" - }, - "version": { - "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided 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\nAPI, 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, none-GA apis.\n", + "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" }, - "mixins": { - "items": { - "$ref": "Mixin" - }, - "type": "array", - "description": "Included APIs. See Mixin." - }, - "options": { - "description": "Any metadata attached to the API.", - "items": { - "$ref": "Option" - }, - "type": "array" + "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" }, - "methods": { - "description": "The methods of this api, in unspecified order.", + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", "items": { - "$ref": "Method" + "$ref": "Page" }, "type": "array" - }, - "name": { - "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name.", - "type": "string" } }, - "id": "Api" - }, - "DataAccessOptions": { - "description": "Write a Data Access (Gin) log", - "type": "object", - "properties": {}, - "id": "DataAccessOptions" + "id": "Page", + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "type": "object" }, - "MetricRule": { - "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.", - "type": "object", + "Status": { "properties": { - "metricCosts": { - "additionalProperties": { - "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.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, - "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" + "type": "array" }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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": "MetricRule" + "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" }, - "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", + "Binding": { + "description": "Associates `members` with a `role`.", "type": "object", "properties": { - "providers": { - "description": "Defines a set of authentication providers that a service supports.", - "items": { - "$ref": "AuthProvider" - }, - "type": "array" + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "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.", + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { - "$ref": "AuthenticationRule" + "type": "string" }, "type": "array" } }, - "id": "Authentication" + "id": "Binding" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "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": { - "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": { + "jwksUri": { "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": "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" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "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" }, - "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" - }, - "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`.", + "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" }, - "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.", + "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" - }, - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", - "items": { - "$ref": "Page" - }, - "type": "array" } }, - "id": "Page" + "id": "AuthProvider" }, - "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.", + "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": { - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "types": { + "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", "items": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "type": "object" + "$ref": "Type" }, "type": "array" }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." }, - "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" - } - } - }, - "Binding": { - "description": "Associates `members` with a `role`.", - "type": "object", - "properties": { - "condition": { - "$ref": "Expr", - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." + "http": { + "$ref": "Http", + "description": "HTTP configuration." }, - "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", + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." + }, + "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.", "items": { - "type": "string" + "$ref": "MonitoredResourceDescriptor" }, "type": "array" }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "AuthProvider": { - "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", - "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" - }, - "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" + "logging": { + "description": "Logging configuration.", + "$ref": "Logging" }, - "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" - } - }, - "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": { - "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", "items": { @@ -1113,23 +615,23 @@ "type": "string" }, "usage": { - "$ref": "Usage", - "description": "Configuration controlling usage of this service." + "description": "Configuration controlling usage of this service.", + "$ref": "Usage" }, "metrics": { - "description": "Defines the metrics used by this service.", "items": { "$ref": "MetricDescriptor" }, - "type": "array" + "type": "array", + "description": "Defines the metrics used by this service." }, "authentication": { "$ref": "Authentication", "description": "Auth configuration." }, "experimental": { - "description": "Experimental configuration.", - "$ref": "Experimental" + "$ref": "Experimental", + "description": "Experimental configuration." }, "control": { "$ref": "Control", @@ -1141,8 +643,8 @@ "type": "integer" }, "monitoring": { - "description": "Monitoring configuration.", - "$ref": "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.", @@ -1160,8 +662,8 @@ "description": "API visibility configuration." }, "quota": { - "$ref": "Quota", - "description": "Quota configuration." + "description": "Quota configuration.", + "$ref": "Quota" }, "name": { "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", @@ -1172,8 +674,8 @@ "$ref": "CustomError" }, "title": { - "type": "string", - "description": "The product title for this service." + "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.", @@ -1183,11 +685,11 @@ "type": "array" }, "apis": { - "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", "items": { "$ref": "Api" }, - "type": "array" + "type": "array", + "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.", @@ -1195,51 +697,12 @@ "$ref": "LogDescriptor" }, "type": "array" - }, - "types": { - "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", - "items": { - "$ref": "Type" - }, - "type": "array" - }, - "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.", - "items": { - "$ref": "MonitoredResourceDescriptor" - }, - "type": "array" - }, - "logging": { - "$ref": "Logging", - "description": "Logging configuration." } }, - "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" + "id": "Service" }, "EnumValue": { + "description": "Enum value definition.", "type": "object", "properties": { "name": { @@ -1259,29 +722,27 @@ "type": "integer" } }, - "id": "EnumValue", - "description": "Enum value definition." + "id": "EnumValue" }, "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.", "items": { "$ref": "Operation" }, "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListOperationsResponse" + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, "CustomHttpPattern": { - "type": "object", "properties": { "kind": { "description": "The name of this custom HTTP verb.", @@ -1293,18 +754,13 @@ } }, "id": "CustomHttpPattern", - "description": "A custom pattern is used for defining custom HTTP verb." + "description": "A custom pattern is used for defining custom HTTP verb.", + "type": "object" }, "OperationMetadata": { - "id": "OperationMetadata", "description": "The metadata associated with a long running operation resource.", "type": "object", "properties": { - "progressPercentage": { - "format": "int32", - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "type": "integer" - }, "startTime": { "format": "google-datetime", "description": "The start time of the operation.", @@ -1323,8 +779,14 @@ "type": "string" }, "type": "array" + }, + "progressPercentage": { + "format": "int32", + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "type": "integer" } - } + }, + "id": "OperationMetadata" }, "SystemParameterRule": { "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", @@ -1345,17 +807,27 @@ "id": "SystemParameterRule" }, "HttpRule": { - "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.", - "type": "object", "properties": { - "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" + "put": { + "type": "string", + "description": "Used for updating a resource." + }, + "delete": { + "type": "string", + "description": "Used for deleting a resource." + }, + "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": { + "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" + }, "restMethodName": { "description": "Optional. 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 \"create\", but\n for backwards compatability with apiary, it is specified as insert.", "type": "string" @@ -1367,25 +839,25 @@ }, "type": "array" }, + "responseBody": { + "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.", + "type": "string" + }, "restCollection": { "description": "Optional. 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" }, - "responseBody": { - "type": "string", - "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type." - }, "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" + "$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": { - "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" + "$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.", @@ -1394,21 +866,11 @@ "get": { "description": "Used for listing and getting information about resources.", "type": "string" - }, - "put": { - "description": "Used for updating a resource.", - "type": "string" - }, - "delete": { - "description": "Used for deleting a resource.", - "type": "string" - }, - "body": { - "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.", - "type": "string" } }, - "id": "HttpRule" + "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" }, "VisibilityRule": { "description": "A visibility rule provides visibility configuration for an individual API\nelement.", @@ -1430,22 +892,20 @@ "type": "object", "properties": { "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" + "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 monitoring destination.\nEach name must be defined in Service.metrics section.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section." } }, "id": "MonitoringDestination" }, "Visibility": { - "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", - "type": "object", "properties": { "rules": { "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", @@ -1455,16 +915,14 @@ "type": "array" } }, - "id": "Visibility" + "id": "Visibility", + "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", + "type": "object" }, "ConfigChange": { "description": "Output generated from semantically comparing two versions of a service\nconfiguration.\n\nIncludes detailed information about a field that have changed with\napplicable advice about potential consequences for the change, such as\nbackwards-incompatibility.", "type": "object", "properties": { - "newValue": { - "type": "string", - "description": "Value of the changed object in the new Service configuration,\nin JSON format. This field will not be populated if ChangeType == REMOVED." - }, "changeType": { "enumDescriptions": [ "No value was provided.", @@ -1495,12 +953,15 @@ "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" + }, + "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" } }, "id": "ConfigChange" }, "SystemParameters": { - "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", "properties": { @@ -1511,25 +972,26 @@ }, "type": "array" } - } + }, + "id": "SystemParameters" }, "Rollout": { "properties": { "trafficPercentStrategy": { - "description": "Google Service Control selects service configurations based on\ntraffic percentage.", - "$ref": "TrafficPercentStrategy" + "$ref": "TrafficPercentStrategy", + "description": "Google Service Control selects service configurations based on\ntraffic percentage." }, "createdBy": { - "description": "The user who created the Rollout. Readonly.", - "type": "string" + "type": "string", + "description": "The user who created the Rollout. Readonly." }, "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" }, "deleteServiceStrategy": { - "$ref": "DeleteServiceStrategy", - "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly." + "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly.", + "$ref": "DeleteServiceStrategy" }, "createTime": { "format": "google-datetime", @@ -1589,6 +1051,8 @@ "id": "Quota" }, "GenerateConfigReportRequest": { + "description": "Request message for GenerateConfigReport method.", + "type": "object", "properties": { "oldConfig": { "additionalProperties": { @@ -1607,32 +1071,43 @@ "type": "object" } }, - "id": "GenerateConfigReportRequest", - "description": "Request message for GenerateConfigReport method.", - "type": "object" + "id": "GenerateConfigReportRequest" }, "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { "updateMask": { + "type": "string", "format": "google-fieldmask", - "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.", - "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." }, "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" + "id": "SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method." + }, + "DeleteServiceStrategy": { + "description": "Strategy used to delete a service. This strategy is a placeholder only\nused by the system generated rollout to delete a service.", + "type": "object", + "properties": {}, + "id": "DeleteServiceStrategy" }, "Step": { - "id": "Step", "description": "Represents the status of one operation step.", "type": "object", "properties": { "status": { + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ], "enum": [ "STATUS_UNSPECIFIED", "DONE", @@ -1642,40 +1117,27 @@ "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." - ] + "type": "string" }, "description": { - "description": "The short description of the step.", - "type": "string" + "type": "string", + "description": "The short description of the step." } - } - }, - "DeleteServiceStrategy": { - "id": "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": "Step" }, "LoggingDestination": { "properties": { + "monitoredResource": { + "type": "string", + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section." + }, "logs": { "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".", "items": { "type": "string" }, "type": "array" - }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", - "type": "string" } }, "id": "LoggingDestination", @@ -1683,13 +1145,7 @@ "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.", @@ -1697,12 +1153,17 @@ }, "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" + "id": "Option", + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "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", "type": "object", "properties": { @@ -1720,58 +1181,23 @@ }, "type": "array" } - } - }, - "Method": { - "description": "Method represents a method of an api.", - "type": "object", - "properties": { - "responseTypeUrl": { - "description": "The URL of the output message type.", - "type": "string" - }, - "options": { - "description": "Any metadata attached to the method.", - "items": { - "$ref": "Option" - }, - "type": "array" - }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" - }, - "name": { - "description": "The simple name of this method.", - "type": "string" - }, - "requestTypeUrl": { - "description": "A URL of the input message type.", - "type": "string" - }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" - }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", - "type": "string" - } }, - "id": "Method" + "id": "Logging" }, "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": { + "unit": { + "type": "string", + "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\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\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.\n\nUsed by metric-based quotas only." + }, + "maxLimit": { + "format": "int64", + "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.", + "type": "string" + }, "name": { "description": "Name of the quota limit. The name is used to refer to the limit when\noverriding the default limit on per-consumer basis.\n\nFor metric-based quota limits, the name must be provided, and it must be\nunique within the service. The name can only include alphanumeric\ncharacters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.\n\nThe name of a limit is used as a unique identifier for this limit.\nTherefore, once a limit has been put into use, its name should be\nimmutable. You can use the display_name field to provide a user-friendly\nname for the limit. The display name can be evolved over time without\naffecting the identity of the limit.", "type": "string" @@ -1794,14 +1220,14 @@ "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.\n\nUsed by metric-based quotas only.", - "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.\n\nUsed by metric-based quotas only.", + "type": "string" + }, "values": { "description": "Tiered limit values, currently only STANDARD is supported.", "type": "object", @@ -1809,29 +1235,54 @@ "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\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\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.\n\nUsed by metric-based quotas only.", - "type": "string" - }, - "maxLimit": { - "format": "int64", - "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.", - "type": "string" } - }, - "id": "QuotaLimit" + } }, - "ConfigRef": { - "description": "Represents a service configuration with its name and id.", + "Method": { + "description": "Method represents a method of an api.", "type": "object", "properties": { "name": { - "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".", + "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 of this method.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ] + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", + "items": { + "$ref": "Option" + }, + "type": "array" + }, + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" } }, - "id": "ConfigRef" + "id": "Method" }, "ListServiceRolloutsResponse": { "description": "Response message for ListServiceRollouts method.", @@ -1851,6 +1302,17 @@ }, "id": "ListServiceRolloutsResponse" }, + "ConfigRef": { + "description": "Represents a service configuration with its name and id.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\"." + } + }, + "id": "ConfigRef" + }, "Mixin": { "description": "Declares an API to be included in this API. The including API must\nredeclare all the methods from the included API, but documentation\nand 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 API plus the root path if 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", @@ -1867,14 +1329,31 @@ "id": "Mixin" }, "FlowOperationMetadata": { + "description": "The metadata associated with a long running operation resource.", + "type": "object", "properties": { + "startTime": { + "format": "google-datetime", + "description": "The start time of the operation.", + "type": "string" + }, + "resourceNames": { + "description": "The full name of the resources that this flow is directly associated with.", + "items": { + "type": "string" + }, + "type": "array" + }, + "flowName": { + "description": "The name of the top-level flow corresponding to this operation.\nMust be equal to the \"name\" field for a FlowName enum.", + "type": "string" + }, "deadline": { "format": "google-datetime", "description": "Deadline for the flow to complete, to prevent orphaned Operations.\n\nIf the flow has not completed by this time, it may be terminated by\nthe engine, or force-failed by Operation lookup.\n\nNote that this is not a hard deadline after which the Flow will\ndefinitely be failed, rather it is a deadline after which it is reasonable\nto suspect a problem and other parts of the system may kill operation\nto ensure we don't have orphans.\nsee also: go/prevent-orphaned-operations", "type": "string" }, "cancelState": { - "type": "string", "enumDescriptions": [ "Default state, cancellable but not cancelled.", "The operation has proceeded past the point of no return and cannot\nbe cancelled.", @@ -1885,45 +1364,28 @@ "UNCANCELLABLE", "CANCELLED" ], - "description": "The state of the operation with respect to cancellation." - }, - "startTime": { - "format": "google-datetime", - "description": "The start time of the operation.", - "type": "string" - }, - "resourceNames": { - "description": "The full name of the resources that this flow is directly associated with.", - "items": { - "type": "string" - }, - "type": "array" - }, - "flowName": { - "description": "The name of the top-level flow corresponding to this operation.\nMust be equal to the \"name\" field for a FlowName enum.", + "description": "The state of the operation with respect to cancellation.", "type": "string" } }, - "id": "FlowOperationMetadata", - "description": "The metadata associated with a long running operation resource.", - "type": "object" + "id": "FlowOperationMetadata" }, "CustomError": { "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", "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.", + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "items": { - "$ref": "CustomErrorRule" + "type": "string" }, "type": "array" }, - "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.", "items": { - "type": "string" + "$ref": "CustomErrorRule" }, "type": "array" } @@ -1938,31 +1400,32 @@ "type": "string" }, "metric": { - "description": "The metric to update.", - "type": "string" + "type": "string", + "description": "The metric to update." } }, "id": "CounterOptions" }, "Http": { - "id": "Http", "description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.", "type": "object", "properties": { + "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." + }, "rules": { "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { "$ref": "HttpRule" }, "type": "array" - }, - "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" }, "SourceInfo": { + "description": "Source information used to create a Service Config", "type": "object", "properties": { "sourceFiles": { @@ -1977,16 +1440,15 @@ "type": "array" } }, - "id": "SourceInfo", - "description": "Source information used to create a Service Config" + "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" @@ -1995,6 +1457,10 @@ "description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.", "type": "object", "properties": { + "urlQueryParameter": { + "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.", "type": "string" @@ -2002,10 +1468,6 @@ "name": { "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", "type": "string" - }, - "urlQueryParameter": { - "type": "string", - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive." } }, "id": "SystemParameter" @@ -2022,30 +1484,60 @@ "type": "array" }, "producerDestinations": { - "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", "items": { "$ref": "MonitoringDestination" }, - "type": "array" + "type": "array", + "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." } }, "id": "Monitoring" }, "Field": { - "id": "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" - }, - "number": { + "oneofIndex": { "format": "int32", - "description": "The field number.", + "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.", "type": "integer" }, - "kind": { + "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": { + "type": "boolean", + "description": "Whether to use alternative packed wire representation." + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, + "name": { + "type": "string", + "description": "The field name." + }, + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "type": "string" + }, + "number": { + "format": "int32", + "description": "The field number.", + "type": "integer" + }, + "kind": { "description": "The field type.", "type": "string", "enumDescriptions": [ @@ -2101,43 +1593,14 @@ "$ref": "Option" }, "type": "array" - }, - "oneofIndex": { - "type": "integer", - "format": "int32", - "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." - }, - "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" - ] - }, - "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", + "description": "A single field of a message type.", + "type": "object" }, "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { "permissions": { @@ -2148,8 +1611,7 @@ "type": "array" } }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method." + "id": "TestIamPermissionsRequest" }, "Enum": { "type": "object", @@ -2162,27 +1624,27 @@ "type": "array" }, "name": { - "type": "string", - "description": "Enum type name." + "description": "Enum type name.", + "type": "string" }, "options": { + "description": "Protocol buffer options.", "items": { "$ref": "Option" }, - "type": "array", - "description": "Protocol buffer options." + "type": "array" }, "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ], "description": "The source syntax.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, "sourceContext": { "$ref": "SourceContext", @@ -2193,23 +1655,27 @@ "description": "Enum type definition." }, "EnableServiceRequest": { + "id": "EnableServiceRequest", + "description": "Request message for EnableService method.", + "type": "object", "properties": { "consumerId": { "description": "The identity of consumer resource which service enablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.", "type": "string" } - }, - "id": "EnableServiceRequest", - "description": "Request message for EnableService method.", - "type": "object" + } }, "Diagnostic": { "description": "Represents a diagnostic message (error or warning)", "type": "object", "properties": { + "message": { + "description": "Message describing the error or warning.", + "type": "string" + }, "location": { - "type": "string", - "description": "File name and line number of the error or warning." + "description": "File name and line number of the error or warning.", + "type": "string" }, "kind": { "description": "The kind of diagnostic information provided.", @@ -2222,10 +1688,6 @@ "WARNING", "ERROR" ] - }, - "message": { - "description": "Message describing the error or warning.", - "type": "string" } }, "id": "Diagnostic" @@ -2239,22 +1701,22 @@ "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" + "type": "string", + "description": "The label key." } }, "id": "LabelDescriptor" @@ -2293,11 +1755,11 @@ "type": "object", "properties": { "options": { - "description": "The protocol buffer options.", "items": { "$ref": "Option" }, - "type": "array" + "type": "array", + "description": "The protocol buffer options." }, "fields": { "description": "The list of fields.", @@ -2337,57 +1799,57 @@ "id": "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" + "id": "Experimental", + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "type": "object" }, "ListServiceConfigsResponse": { + "id": "ListServiceConfigsResponse", "description": "Response message for ListServiceConfigs method.", "type": "object", "properties": { - "nextPageToken": { - "description": "The token of the next page of results.", - "type": "string" - }, "serviceConfigs": { - "description": "The list of service configuration resources.", "items": { "$ref": "Service" }, - "type": "array" + "type": "array", + "description": "The list of service configuration resources." + }, + "nextPageToken": { + "description": "The token of the next page of results.", + "type": "string" } - }, - "id": "ListServiceConfigsResponse" + } }, "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", "type": "object", "properties": { - "exemptedMembers": { - "items": { - "type": "string" - }, - "type": "array" - }, "service": { "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", "type": "string" }, "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", "items": { "$ref": "AuditLogConfig" }, - "type": "array", - "description": "The configuration for logging of each type of permission.\nNext ID: 4" + "type": "array" + }, + "exemptedMembers": { + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "AuditConfig", - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging." + "id": "AuditConfig" }, "Backend": { "description": "`Backend` defines the backend configuration for a service.", @@ -2419,6 +1881,7 @@ "id": "SubmitConfigSourceRequest" }, "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", "type": "object", "properties": { @@ -2426,8 +1889,7 @@ "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", "type": "string" } - }, - "id": "AuthorizationConfig" + } }, "DocumentationRule": { "properties": { @@ -2452,10 +1914,6 @@ "description": "Write a Cloud Audit log", "type": "object", "properties": { - "isReadPermissionType": { - "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", - "type": "boolean" - }, "logName": { "enumDescriptions": [ "Default. Should not be used.", @@ -2469,20 +1927,25 @@ ], "description": "The log_name to populate in the Cloud Audit Record.", "type": "string" + }, + "isReadPermissionType": { + "description": "True if the log is for a permission of type DATA_READ or ADMIN_READ.", + "type": "boolean" } }, "id": "CloudAuditOptions" }, "ContextRule": { + "id": "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.", "items": { "type": "string" }, - "type": "array" + "type": "array", + "description": "A list of full type names of requested contexts." }, "selector": { "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", @@ -2495,51 +1958,12 @@ }, "type": "array" } - }, - "id": "ContextRule" - }, - "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" + } }, "MetricDescriptor": { - "id": "MetricDescriptor", "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", "type": "object", "properties": { - "type": { - "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", - "type": "string" - }, - "valueType": { - "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": [ - "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" - ] - }, "metricKind": { "enumDescriptions": [ "Do not use this default value.", @@ -2576,23 +2000,53 @@ "type": "array" }, "name": { + "description": "The resource name of the metric descriptor. Depending on the\nimplementation, the name typically includes: (1) the parent resource name\nthat defines the scope of the metric type or of its data; and (2) the\nmetric's URL-encoded type, which also appears in the `type` field of this\ndescriptor. For example, following is the resource name of a custom\nmetric within the GCP project `my-project-id`:\n\n \"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"", + "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" + } + }, + "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": { "type": "string", - "description": "The resource name of the metric descriptor. Depending on the\nimplementation, the name typically includes: (1) the parent resource name\nthat defines the scope of the metric type or of its data; and (2) the\nmetric's URL-encoded type, which also appears in the `type` field of this\ndescriptor. For example, following is the resource name of a custom\nmetric within the GCP project `my-project-id`:\n\n \"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"" + "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`." } - } + }, + "id": "SourceContext" }, "Expr": { "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", "type": "object", "properties": { - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", - "type": "string" - }, - "expression": { - "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" - }, "location": { "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", "type": "string" @@ -2600,6 +2054,14 @@ "title": { "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", "type": "string" + }, + "description": { + "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "type": "string", + "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported." } }, "id": "Expr" @@ -2640,6 +2102,10 @@ }, "type": "array" }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, "aliases": { "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intented\nalias.\n\nAdditional names that this endpoint will be hosted on.", "items": { @@ -2647,10 +2113,6 @@ }, "type": "array" }, - "allowCors": { - "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", - "type": "boolean" - }, "name": { "description": "The canonical name of this endpoint.", "type": "string" @@ -2663,15 +2125,15 @@ "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", - "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" + "id": "OAuthRequirements" }, "TestIamPermissionsResponse": { "description": "Response message for `TestIamPermissions` method.", @@ -2695,10 +2157,6 @@ }, "Usage": { "properties": { - "producerNotificationChannel": { - "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.", - "type": "string" - }, "rules": { "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { @@ -2707,11 +2165,15 @@ "type": "array" }, "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", "items": { "type": "string" }, - "type": "array", - "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" + }, + "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", @@ -2723,29 +2185,19 @@ "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.", "items": { "$ref": "ContextRule" }, - "type": "array" + "type": "array", + "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." } }, "id": "Context" }, "Rule": { + "description": "A rule to be applied in a Policy.", "type": "object", "properties": { - "description": { - "type": "string", - "description": "Human-readable description of the rule." - }, - "conditions": { - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - }, - "type": "array" - }, "logConfig": { "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", "items": { @@ -2768,6 +2220,7 @@ "type": "array" }, "action": { + "type": "string", "enumDescriptions": [ "Default no action.", "Matching 'Entries' grant access.", @@ -2784,8 +2237,7 @@ "DENY_WITH_LOG", "LOG" ], - "description": "Required", - "type": "string" + "description": "Required" }, "notIn": { "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", @@ -2793,39 +2245,50 @@ "type": "string" }, "type": "array" + }, + "description": { + "type": "string", + "description": "Human-readable description of the rule." + }, + "conditions": { + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" + }, + "type": "array" } }, - "id": "Rule", - "description": "A rule to be applied in a Policy." + "id": "Rule" }, "LogConfig": { + "id": "LogConfig", "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1", "type": "object", "properties": { "dataAccess": { - "$ref": "DataAccessOptions", - "description": "Data access options." + "description": "Data access options.", + "$ref": "DataAccessOptions" }, "cloudAudit": { "$ref": "CloudAuditOptions", "description": "Cloud audit options." }, "counter": { - "$ref": "CounterOptions", - "description": "Counter options." + "description": "Counter options.", + "$ref": "CounterOptions" } - }, - "id": "LogConfig" + } }, "LogDescriptor": { + "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer", "type": "object", "properties": { "labels": { - "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", "items": { "$ref": "LabelDescriptor" }, - "type": "array" + "type": "array", + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid." }, "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 [/_-.].", @@ -2840,24 +2303,13 @@ "type": "string" } }, - "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": "LogDescriptor" }, "ConfigFile": { "description": "Generic specification of a source configuration file", "type": "object", "properties": { - "fileContents": { - "format": "byte", - "description": "The bytes that constitute the file.", - "type": "string" - }, - "filePath": { - "description": "The file name of the configuration file (full or relative path).", - "type": "string" - }, "fileType": { - "type": "string", "enumDescriptions": [ "Unknown file type.", "YAML-specification of service.", @@ -2872,36 +2324,31 @@ "OPEN_API_YAML", "FILE_DESCRIPTOR_SET_PROTO" ], - "description": "The type of configuration file this represents." - } - }, - "id": "ConfigFile" - }, - "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" + "description": "The type of configuration file this represents.", + "type": "string" }, - "selector": { - "type": "string", - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details." + "fileContents": { + "format": "byte", + "description": "The bytes that constitute the file.", + "type": "string" + }, + "filePath": { + "description": "The file name of the configuration file (full or relative path).", + "type": "string" } }, - "id": "CustomErrorRule" + "id": "ConfigFile" }, "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\"`.", "items": { "$ref": "LabelDescriptor" }, - "type": "array" + "type": "array", + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`." }, "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}\"`.", @@ -2922,7 +2369,23 @@ }, "id": "MonitoredResourceDescriptor" }, + "CustomErrorRule": { + "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", + "description": "A custom error rule." + }, "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": { @@ -2937,24 +2400,24 @@ "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", "type": "boolean" }, - "dropzone": { - "type": "string", - "description": "Name of the Scotty dropzone to use for the current API." - }, "maxDirectDownloadSize": { "format": "int64", "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", "type": "string" }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, "useDirectDownload": { "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", "type": "boolean" } }, - "id": "MediaDownload", - "description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods." + "id": "MediaDownload" }, "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", "type": "object", "properties": { "provider": { @@ -2962,10 +2425,11 @@ "type": "string" } }, - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider." + "id": "CustomAuthRequirements" }, "ChangeReport": { + "description": "Change report associated with a particular service configuration.\n\nIt contains a list of ConfigChanges based on the comparison between\ntwo service configurations.", + "type": "object", "properties": { "configChanges": { "description": "List of changes between two service configurations.\nThe changes will be alphabetically sorted based on the identifier\nof each change.\nA ConfigChange identifier is a dot separated path to the configuration.\nExample: visibility.rules[selector='LibraryService.CreateBook'].restriction", @@ -2975,9 +2439,7 @@ "type": "array" } }, - "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.", - "type": "object" + "id": "ChangeReport" }, "DisableServiceRequest": { "description": "Request message for DisableService method.", @@ -3002,6 +2464,7 @@ "id": "SubmitConfigSourceResponse" }, "MediaUpload": { + "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", "properties": { @@ -3022,8 +2485,8 @@ "type": "boolean" }, "progressNotification": { - "type": "boolean", - "description": "Whether to receive a notification for progress changes of media upload." + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" }, "completeNotification": { "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", @@ -3041,374 +2504,911 @@ "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" + } }, "Advice": { - "id": "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": { - "type": "string", - "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks." - } - } - }, - "ManagedService": { - "description": "The full representation of a Service that is managed by\nGoogle Service Management.", - "type": "object", - "properties": { - "producerProjectId": { - "description": "ID of the project that produces and owns this service.", - "type": "string" - }, - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", + "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks.", "type": "string" } }, - "id": "ManagedService" - }, - "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": { - "skipServiceControl": { - "description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled.", - "type": "boolean" + "id": "Advice" + } + }, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "protocol": "rest", + "canonicalName": "Service Management", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/service.management": { + "description": "Manage your Google API service configuration" }, - "allowUnregisteredCalls": { - "description": "True, if the method allows unregistered calls; false otherwise.", - "type": "boolean" + "https://www.googleapis.com/auth/service.management.readonly": { + "description": "View your Google API service configuration" }, - "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": "UsageRule" - }, - "AuthRequirement": { - "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).", - "type": "object", - "properties": { - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", - "type": "string" + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" }, - "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" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "AuthRequirement" - }, - "TrafficPercentStrategy": { - "description": "Strategy that specifies how clients of Google Service Controller want to\nsend traffic to use different config versions. This is generally\nused by API proxy to split traffic based on your configured precentage for\neach config version.\n\nOne example of how to gradually rollout a new service configuration using\nthis\nstrategy:\nDay 1\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160206\"\n traffic_percent_strategy {\n percentages: {\n \"example.googleapis.com/20160201\": 70.00\n \"example.googleapis.com/20160206\": 30.00\n }\n }\n }\n\nDay 2\n\n Rollout {\n id: \"example.googleapis.com/rollout_20160207\"\n traffic_percent_strategy: {\n percentages: {\n \"example.googleapis.com/20160206\": 100.00\n }\n }\n }", - "type": "object", - "properties": { - "percentages": { - "additionalProperties": { - "format": "double", - "type": "number" + } + } + }, + "rootUrl": "https://servicemanagement.googleapis.com/", + "ownerDomain": "google.com", + "name": "servicemanagement", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Google Service Management API", + "ownerName": "Google", + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "response": { + "$ref": "Operation" }, - "description": "Maps service configuration IDs to their corresponding traffic percentage.\nKey is the service configuration ID, Value is the traffic percentage\nwhich must be greater than 0.0 and the sum must equal to 100.0.", - "type": "object" - } - }, - "id": "TrafficPercentStrategy" - }, - "Documentation": { - "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", - "type": "object", - "properties": { - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" - }, - "documentationRootUrl": { - "type": "string", - "description": "The URL to the root of documentation." - }, - "overview": { - "type": "string", - "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." - }, - "rules": { - "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", - "items": { - "$ref": "DocumentationRule" + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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.", + "type": "string", + "required": true + } }, - "type": "array" + "flatPath": "v1/operations/{operationsId}", + "id": "servicemanagement.operations.get", + "path": "v1/{+name}" }, - "pages": { - "description": "The top level pages for the documentation set.", - "items": { - "$ref": "Page" + "list": { + "description": "Lists service operations that match the specified filter in the request.", + "response": { + "$ref": "ListOperationsResponse" }, - "type": "array" - } - }, - "id": "Documentation" - }, - "Condition": { - "description": "A condition to be met.", - "type": "object", - "properties": { - "value": { - "type": "string", - "description": "DEPRECATED. Use 'values' instead." - }, - "sys": { - "enumDescriptions": [ - "Default non-attribute type", - "Region of the resource", - "Service name", - "Resource name", - "IP address of the caller" - ], - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" ], - "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", - "type": "string" + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "The standard list page token." + }, + "name": { + "location": "query", + "description": "Not used.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.", + "type": "integer" + }, + "filter": { + "location": "query", + "description": "A string for filtering Operations.\n The following filter fields are supported:\n\n * serviceName: Required. Only `=` operator is allowed.\n * startTime: The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status: Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples:\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`", + "type": "string" + } + }, + "flatPath": "v1/operations", + "id": "servicemanagement.operations.list", + "path": "v1/operations" + } + } + }, + "services": { + "methods": { + "list": { + "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": { + "pageToken": { + "location": "query", + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested size of the next page of data.", + "type": "integer" + }, + "producerProjectId": { + "type": "string", + "location": "query", + "description": "Include services produced by the specified project." + }, + "consumerId": { + "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/services", + "id": "servicemanagement.services.list", + "path": "v1/services", + "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}\"." }, - "values": { - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" + "create": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" }, - "type": "array" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "parameters": {}, + "flatPath": "v1/services", + "path": "v1/services", + "id": "servicemanagement.services.create", + "request": { + "$ref": "ManagedService" + }, + "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e" }, - "iam": { - "type": "string", - "enumDescriptions": [ - "Default non-attribute.", - "Either principal or (if present) authority selector.", - "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", - "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", - "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." + "generateConfigReport": { + "id": "servicemanagement.services.generateConfigReport", + "path": "v1/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" + }, + "response": { + "$ref": "GenerateConfigReportResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" ], - "enum": [ - "NO_ATTR", - "AUTHORITY", - "ATTRIBUTION", - "APPROVER", - "JUSTIFICATION_TYPE" + "flatPath": "v1/services:generateConfigReport" + }, + "get": { + "id": "servicemanagement.services.get", + "path": "v1/services/{serviceName}", + "description": "Gets a managed service. Authentication is required unless the service is\npublic.", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "ManagedService" + }, + "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" ], - "description": "Trusted attributes supplied by the IAM system." + "parameters": { + "serviceName": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`." + } + }, + "flatPath": "v1/services/{serviceName}" }, - "op": { - "enumDescriptions": [ - "Default no-op.", - "DEPRECATED. Use IN instead.", - "DEPRECATED. Use NOT_IN instead.", - "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", - "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", - "Subject is discharged" + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" ], - "enum": [ - "NO_OP", - "EQUALS", - "NOT_EQUALS", - "IN", - "NOT_IN", - "DISCHARGED" + "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" ], - "description": "An operator to apply the subject with.", - "type": "string" + "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.", + "type": "string", + "required": true, + "pattern": "^services/[^/]+$" + } + }, + "flatPath": "v1/services/{servicesId}:testIamPermissions", + "id": "servicemanagement.services.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning." }, - "svc": { - "description": "Trusted attributes discharged by the service.", - "type": "string" + "getConfig": { + "response": { + "$ref": "Service" + }, + "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`.", + "type": "string", + "required": true, + "location": "path" + }, + "configId": { + "location": "query", + "description": "The id of the service configuration resource.", + "type": "string" + }, + "view": { + "type": "string", + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Specifies which parts of the Service Config should be returned in the\nresponse." + } + }, + "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", + "id": "servicemanagement.services.getConfig", + "path": "v1/services/{serviceName}/config", + "description": "Gets a service configuration (version) for a managed service." + }, + "delete": { + "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "serviceName" + ], + "httpMethod": "DELETE", + "parameters": { + "serviceName": { + "location": "path", + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/services/{serviceName}", + "id": "servicemanagement.services.delete", + "path": "v1/services/{serviceName}" + }, + "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", + "httpMethod": "POST", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "parameters": { + "serviceName": { + "location": "path", + "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/services/{serviceName}:enable", + "path": "v1/services/{serviceName}:enable", + "id": "servicemanagement.services.enable" + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true, + "pattern": "^services/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "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" + } + }, + "disable": { + "flatPath": "v1/services/{serviceName}:disable", + "id": "servicemanagement.services.disable", + "path": "v1/services/{serviceName}: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" + }, + "parameterOrder": [ + "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 disable. Specifying an unknown service name\nwill cause the request to fail.", + "type": "string", + "required": true + } + } + }, + "getIamPolicy": { + "request": { + "$ref": "GetIamPolicyRequest" + }, + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Policy" + }, + "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/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true + } + }, + "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`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/services/{serviceName}:undelete", + "id": "servicemanagement.services.undelete", + "path": "v1/services/{serviceName}:undelete" + } + }, + "resources": { + "configs": { + "methods": { + "get": { + "description": "Gets a service configuration (version) for a managed service.", + "parameterOrder": [ + "serviceName", + "configId" + ], + "response": { + "$ref": "Service" + }, + "httpMethod": "GET", + "parameters": { + "configId": { + "location": "path", + "description": "The id of the service configuration resource.", + "type": "string", + "required": true + }, + "view": { + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", + "type": "string" + }, + "serviceName": { + "location": "path", + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ], + "flatPath": "v1/services/{serviceName}/configs/{configId}", + "id": "servicemanagement.services.configs.get", + "path": "v1/services/{serviceName}/configs/{configId}" + }, + "list": { + "response": { + "$ref": "ListServiceConfigsResponse" + }, + "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 [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "type": "string", + "required": true + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "The token of the page to retrieve." + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The max number of items to include in the response list.", + "type": "integer" + } + }, + "flatPath": "v1/services/{serviceName}/configs", + "id": "servicemanagement.services.configs.list", + "path": "v1/services/{serviceName}/configs", + "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest." + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "Service" + }, + "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`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/services/{serviceName}/configs", + "path": "v1/services/{serviceName}/configs", + "id": "servicemanagement.services.configs.create", + "request": { + "$ref": "Service" + }, + "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout." + }, + "submit": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "serviceName" + ], + "httpMethod": "POST", + "parameters": { + "serviceName": { + "location": "path", + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/services/{serviceName}/configs:submit", + "id": "servicemanagement.services.configs.submit", + "path": "v1/services/{serviceName}/configs:submit", + "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e", + "request": { + "$ref": "SubmitConfigSourceRequest" + } + } + } + }, + "consumers": { + "methods": { + "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/service.management" + ], + "parameters": { + "resource": { + "type": "string", + "required": true, + "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." + } + }, + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:setIamPolicy", + "id": "servicemanagement.services.consumers.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy" + }, + "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": { + "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true, + "pattern": "^services/[^/]+/consumers/[^/]+$", + "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}/consumers/{consumersId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "servicemanagement.services.consumers.testIamPermissions" + }, + "getIamPolicy": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Policy" + }, + "parameters": { + "resource": { + "pattern": "^services/[^/]+/consumers/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ], + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "servicemanagement.services.consumers.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" + } + } + } + }, + "rollouts": { + "methods": { + "create": { + "parameters": { + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "type": "string", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/services/{serviceName}/rollouts", + "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\nOperation\u003cresponse: Rollout\u003e", + "request": { + "$ref": "Rollout" + }, + "httpMethod": "POST", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "Operation" + } + }, + "get": { + "description": "Gets a service configuration rollout.", + "response": { + "$ref": "Rollout" + }, + "parameterOrder": [ + "serviceName", + "rolloutId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ], + "parameters": { + "serviceName": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`." + }, + "rolloutId": { + "description": "The id of the rollout resource.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}", + "id": "servicemanagement.services.rollouts.get", + "path": "v1/services/{serviceName}/rollouts/{rolloutId}" + }, + "list": { + "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.", + "httpMethod": "GET", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "ListServiceRolloutsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/service.management", + "https://www.googleapis.com/auth/service.management.readonly" + ], + "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`.", + "type": "string", + "required": true + }, + "pageToken": { + "location": "query", + "description": "The token of the page to retrieve.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The max number of items to include in the response list.", + "type": "integer" + } + }, + "flatPath": "v1/services/{serviceName}/rollouts", + "path": "v1/services/{serviceName}/rollouts", + "id": "servicemanagement.services.rollouts.list" + } + } } - }, - "id": "Condition" + } + } + }, + "parameters": { + "upload_protocol": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, - "AuditLogConfig": { - "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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", - "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." + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "ConfigSource": { - "type": "object", - "properties": { - "files": { - "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", - "items": { - "$ref": "ConfigFile" - }, - "type": "array" - }, - "id": { - "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.", - "type": "string" - } - }, - "id": "ConfigSource", - "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`." + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "BackendRule": { - "description": "A backend rule provides configuration for an individual API element.", - "type": "object", - "properties": { - "minDeadline": { - "format": "double", - "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "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": { - "format": "double", - "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.", - "type": "number" - } - }, - "id": "BackendRule" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "AuthenticationRule": { - "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.", - "type": "object", - "properties": { - "requirements": { - "description": "Requirements for additional authentication providers.", - "items": { - "$ref": "AuthRequirement" - }, - "type": "array" - }, - "allowWithoutCredential": { - "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", - "type": "boolean" - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "customAuth": { - "$ref": "CustomAuthRequirements", - "description": "Configuration for custom authentication." - }, - "oauth": { - "description": "The requirements for OAuth credentials.", - "$ref": "OAuthRequirements" - } - }, - "id": "AuthenticationRule" + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string" }, - "UndeleteServiceResponse": { - "id": "UndeleteServiceResponse", - "description": "Response message for UndeleteService method.", - "type": "object", - "properties": { - "service": { - "description": "Revived service resource.", - "$ref": "ManagedService" - } - } + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "Policy": { - "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "etag": { - "format": "byte", - "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.", - "type": "string" - }, - "iamOwned": { - "type": "boolean" - }, - "rules": { - "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - }, - "type": "array" - }, - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - }, - "type": "array" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - }, - "type": "array" - } - }, - "id": "Policy" - } - }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "protocol": "rest", - "canonicalName": "Service Management", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/service.management.readonly": { - "description": "View 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" - } - } + "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json" + }, + "key": { + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "access_token": { + "type": "string", + "location": "query", + "description": "OAuth access token." + }, + "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.", + "default": "true", + "type": "boolean", + "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" } }, - "rootUrl": "https://servicemanagement.googleapis.com/" + "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", + "basePath": "", + "documentationLink": "https://cloud.google.com/service-management/", + "revision": "20170707", + "id": "servicemanagement:v1", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/serviceuser_v1.json b/DiscoveryJson/serviceuser_v1.json index edd5e003e9..7dfa1ece58 100644 --- a/DiscoveryJson/serviceuser_v1.json +++ b/DiscoveryJson/serviceuser_v1.json @@ -1,464 +1,125 @@ { - "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 User", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/service.management": { - "description": "Manage your Google API service configuration" - }, - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://serviceuser.googleapis.com/", - "ownerDomain": "google.com", - "name": "serviceuser", - "batchPath": "batch", - "title": "Google Service User API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "services": { - "methods": { - "disable": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "Name of the consumer and the service to disable for that consumer.\n\nThe Service User implementation accepts the following forms for consumer:\n- \"project:\u003cproject_id\u003e\"\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:disable", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/services/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable", - "id": "serviceuser.projects.services.disable", - "path": "v1/{+name}:disable", - "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", - "request": { - "$ref": "DisableServiceRequest" - } - }, - "enable": { - "request": { - "$ref": "EnableServiceRequest" - }, - "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "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", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/services/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable", - "path": "v1/{+name}:enable", - "id": "serviceuser.projects.services.enable" - }, - "list": { - "description": "List enabled services for the specified consumer.", - "httpMethod": "GET", - "response": { - "$ref": "ListEnabledServicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "Requested size of the next page of data.", - "type": "integer" - }, - "parent": { - "description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project", - "type": "string", - "required": true, - "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}/services", - "path": "v1/{+parent}/services", - "id": "serviceuser.projects.services.list" - } - } - } - } - }, - "services": { - "methods": { - "search": { - "response": { - "$ref": "SearchServicesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "format": "int32", - "description": "Requested size of the next page of data." - } - }, - "flatPath": "v1/services:search", - "id": "serviceuser.services.search", - "path": "v1/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": { - "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.", - "default": "true", - "type": "boolean" - }, - "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": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "alt": { - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response." - }, - "key": { - "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.", - "default": "true", - "type": "boolean" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "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": "", + "kind": "discovery#restDescription", "basePath": "", - "id": "serviceuser:v1", "revision": "20170707", "documentationLink": "https://cloud.google.com/service-management/", + "id": "serviceuser:v1", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "Quota": { + "Documentation": { + "description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", + "type": "object", "properties": { - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "pages": { + "description": "The top level pages for the documentation set.", "items": { - "$ref": "MetricRule" + "$ref": "Page" }, "type": "array" }, - "limits": { - "items": { - "$ref": "QuotaLimit" - }, - "type": "array", - "description": "List of `QuotaLimit` definitions for the service." - } - }, - "id": "Quota", - "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64", - "type": "object" - }, - "Step": { - "type": "object", - "properties": { - "status": { - "enumDescriptions": [ - "Unspecifed code.", - "The operation or step has completed without errors.", - "The operation or step has not started yet.", - "The operation or step is in progress.", - "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", - "The operation or step has completed with cancellation." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" - ], - "description": "The status code.", + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", "type": "string" }, - "description": { - "description": "The short description of the step.", + "documentationRootUrl": { + "description": "The URL to the root of documentation.", "type": "string" - } - }, - "id": "Step", - "description": "Represents the status of one operation step." - }, - "LoggingDestination": { - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", - "type": "object", - "properties": { - "logs": { + }, + "overview": { + "type": "string", + "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." + }, + "rules": { "items": { - "type": "string" + "$ref": "DocumentationRule" }, "type": "array", - "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 \"/\"." - }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", - "type": "string" + "description": "A list of documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order." } }, - "id": "LoggingDestination" + "id": "Documentation" }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "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": { - "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" + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" }, - "name": { - "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.", - "type": "string" - } - }, - "id": "Option" - }, - "Logging": { - "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history", - "type": "object", - "properties": { - "consumerDestinations": { - "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", - "items": { - "$ref": "LoggingDestination" - }, - "type": "array" + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." }, - "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 for additional authentication providers.", "items": { - "$ref": "LoggingDestination" + "$ref": "AuthRequirement" }, "type": "array" + }, + "allowWithoutCredential": { + "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", + "type": "boolean" + }, + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" } }, - "id": "Logging" + "id": "AuthenticationRule" }, - "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", + "BackendRule": { "properties": { - "name": { - "description": "Name of the quota limit. The name is used to refer to the limit when\noverriding the default limit on per-consumer basis.\n\nFor metric-based quota limits, the name must be provided, and it must be\nunique within the service. The name can only include alphanumeric\ncharacters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.\n\nThe name of a limit is used as a unique identifier for this limit.\nTherefore, once a limit has been put into use, its name should be\nimmutable. You can use the display_name field to provide a user-friendly\nname for the limit. The display name can be evolved over time without\naffecting the identity of the limit.", - "type": "string" - }, - "duration": { - "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", - "type": "string" - }, - "freeTier": { - "format": "int64", - "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.", - "type": "string" - }, - "defaultLimit": { - "format": "int64", - "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.", - "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.\n\nUsed by metric-based quotas only.", - "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" - }, - "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": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "Tiered limit values, currently only STANDARD is supported.", - "type": "object" + "deadline": { + "format": "double", + "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.", + "type": "number" }, - "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\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\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.\n\nUsed by metric-based quotas only.", - "type": "string" + "minDeadline": { + "type": "number", + "format": "double", + "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected." }, - "maxLimit": { - "format": "int64", - "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.", + "address": { + "description": "The address of the API backend.", "type": "string" } }, - "id": "QuotaLimit" + "id": "BackendRule", + "description": "A backend rule provides configuration for an individual API element.", + "type": "object" }, - "Method": { + "Api": { + "description": "Api is a light-weight descriptor for a protocol buffer service.", + "type": "object", "properties": { - "responseTypeUrl": { - "description": "The URL of the output message type.", - "type": "string" - }, "options": { - "description": "Any metadata attached to the method.", + "description": "Any metadata attached to the API.", "items": { "$ref": "Option" }, "type": "array" }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" + "methods": { + "description": "The methods of this api, in unspecified order.", + "items": { + "$ref": "Method" + }, + "type": "array" }, "name": { - "description": "The simple name of this method.", + "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name.", "type": "string" }, - "requestTypeUrl": { - "type": "string", - "description": "A URL of the input message type." - }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" - }, "syntax": { - "description": "The source syntax of this method.", - "type": "string", "enumDescriptions": [ "Syntax `proto2`.", "Syntax `proto3`." @@ -466,1511 +127,1850 @@ "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" - ] + ], + "description": "The source syntax of the service.", + "type": "string" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "version": { + "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided 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\nAPI, 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, none-GA apis.\n", + "type": "string" + }, + "mixins": { + "description": "Included APIs. See Mixin.", + "items": { + "$ref": "Mixin" + }, + "type": "array" } }, - "id": "Method", - "description": "Method represents a method of an api.", - "type": "object" + "id": "Api" }, - "Mixin": { - "description": "Declares an API to be included in this API. The including API must\nredeclare all the methods from the included API, but documentation\nand 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 API plus the root path if 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 }", + "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": { - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", - "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" }, - "name": { - "description": "The fully qualified name of the API which is included.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" } }, - "id": "Mixin" + "id": "MetricRule" }, - "CustomError": { - "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", + "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": { - "types": { - "items": { - "type": "string" - }, - "type": "array", - "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.", + "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "CustomErrorRule" + "$ref": "AuthenticationRule" }, "type": "array" - } - } - }, - "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.", + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "items": { - "$ref": "HttpRule" + "$ref": "AuthProvider" }, "type": "array" } }, - "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" + "id": "Authentication" }, - "SourceInfo": { - "description": "Source information used to create a Service Config", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "sourceFiles": { - "description": "All files used during config generation.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" + "done": { + "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.", + "type": "boolean" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.", + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "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": "SourceInfo" + "id": "Operation" }, - "Control": { - "description": "Selects and configures the service controller used by the service. The\nservice controller handles features like abuse, quota, billing, logging,\nmonitoring, etc.", + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", "type": "object", "properties": { - "environment": { - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "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.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "name": { + "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", "type": "string" } }, - "id": "Control" + "id": "Page" }, - "SystemParameter": { - "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.", + "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": { - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", - "type": "string" + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" }, - "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "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" }, - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", - "type": "string" + "details": { + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array", + "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use." } - } + }, + "id": "Status" }, - "Field": { - "description": "A single field of a message type.", + "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": { - "typeUrl": { - "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "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" }, - "number": { - "format": "int32", - "description": "The field number.", - "type": "integer" + "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" }, - "jsonName": { - "description": "The field JSON name.", + "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" }, - "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" - ] + "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" + } + }, + "id": "AuthProvider" + }, + "EnumValue": { + "description": "Enum value definition.", + "type": "object", + "properties": { + "name": { + "description": "Enum value name.", + "type": "string" }, "options": { - "description": "The protocol buffer options.", + "description": "Protocol buffer options.", "items": { "$ref": "Option" }, "type": "array" }, - "oneofIndex": { + "number": { "format": "int32", - "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.", + "description": "Enum value number.", "type": "integer" - }, - "packed": { - "description": "Whether to use alternative packed wire representation.", - "type": "boolean" - }, - "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." - }, - "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" + "id": "EnumValue" }, - "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", + "Service": { "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.", + "visibility": { + "$ref": "Visibility", + "description": "API visibility configuration." + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "title": { + "description": "The product title for this service.", + "type": "string" + }, + "endpoints": { + "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.", "items": { - "$ref": "MonitoringDestination" + "$ref": "Endpoint" }, "type": "array" }, - "producerDestinations": { - "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", + "logs": { + "description": "Defines the logs used by this service.", "items": { - "$ref": "MonitoringDestination" + "$ref": "LogDescriptor" }, "type": "array" - } - }, - "id": "Monitoring" - }, - "Enum": { - "description": "Enum type definition.", - "type": "object", - "properties": { - "enumvalue": { + }, + "apis": { + "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.", "items": { - "$ref": "EnumValue" + "$ref": "Api" }, - "type": "array", - "description": "Enum value definitions." - }, - "name": { - "description": "Enum type name.", - "type": "string" + "type": "array" }, - "options": { - "description": "Protocol buffer options.", + "types": { "items": { - "$ref": "Option" + "$ref": "Type" }, - "type": "array" + "type": "array", + "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" }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" + "sourceInfo": { + "description": "Output only. The source information for this configuration if available.", + "$ref": "SourceInfo" }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - } - }, - "id": "Enum" - }, - "LabelDescriptor": { - "properties": { - "description": { - "description": "A human-readable description for the label.", - "type": "string" + "http": { + "$ref": "Http", + "description": "HTTP configuration." }, - "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" - ] + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." }, - "key": { - "description": "The label key.", - "type": "string" - } - }, - "id": "LabelDescriptor", - "description": "A description of a label.", - "type": "object" - }, - "EnableServiceRequest": { - "description": "Request message for EnableService method.", - "type": "object", - "properties": {}, - "id": "EnableServiceRequest" - }, - "Type": { - "description": "A protocol buffer message type.", - "type": "object", - "properties": { - "options": { - "description": "The protocol buffer options.", + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." + }, + "logging": { + "$ref": "Logging", + "description": "Logging configuration." + }, + "monitoredResources": { "items": { - "$ref": "Option" + "$ref": "MonitoredResourceDescriptor" }, - "type": "array" + "type": "array", + "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations." }, - "fields": { - "description": "The list of fields.", + "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", "items": { - "$ref": "Field" + "$ref": "Enum" }, "type": "array" }, - "name": { - "description": "The fully qualified message name.", + "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" }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", + "usage": { + "description": "Configuration controlling usage of this service.", + "$ref": "Usage" + }, + "metrics": { + "description": "Defines the metrics used by this service.", "items": { - "type": "string" + "$ref": "MetricDescriptor" }, "type": "array" }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - } - }, - "id": "Type" - }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", - "type": "object", - "properties": { - "authorization": { - "$ref": "AuthorizationConfig", - "description": "Authorization configuration." + "experimental": { + "description": "Experimental configuration.", + "$ref": "Experimental" + }, + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." + }, + "configVersion": { + "format": "uint32", + "description": "The version of the service configuration. The config version may\ninfluence interpretation of the configuration, for example, to\ndetermine defaults. This is documented together with applicable\noptions. The current default for the config version itself is `3`.", + "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.", + "items": { + "$ref": "Type" + }, + "type": "array" + }, + "producerProjectId": { + "description": "The Google project that owns this service.", + "type": "string" } }, - "id": "Experimental" + "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" }, - "Backend": { - "id": "Backend", - "description": "`Backend` defines the backend configuration for a service.", + "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", "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.", + "startTime": { + "format": "google-datetime", + "description": "The start time of the operation.", + "type": "string" + }, + "steps": { "items": { - "$ref": "BackendRule" + "$ref": "Step" + }, + "type": "array", + "description": "Detailed status information for each step. The order is undetermined." + }, + "resourceNames": { + "description": "The full name of the resources that this operation is directly\nassociated with.", + "items": { + "type": "string" }, "type": "array" + }, + "progressPercentage": { + "format": "int32", + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "type": "integer" } - } + }, + "id": "OperationMetadata" }, - "DocumentationRule": { - "description": "A documentation rule provides information about individual API elements.", + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", "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`.", + "kind": { + "description": "The name of this custom HTTP verb.", "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.", + "path": { + "description": "The path matched by this custom verb.", "type": "string" } }, - "id": "DocumentationRule" + "id": "CustomHttpPattern" }, - "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", + "PublishedService": { "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", - "type": "string" + "service": { + "description": "The service's published configuration.", + "$ref": "Service" + }, + "name": { + "type": "string", + "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com" } }, - "id": "AuthorizationConfig" + "id": "PublishedService", + "description": "The published version of a Service that is managed by\nGoogle Service Management.", + "type": "object" }, - "ContextRule": { + "SystemParameterRule": { "properties": { "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" }, - "provided": { - "description": "A list of full type names of provided contexts.", - "items": { - "type": "string" - }, - "type": "array" - }, - "requested": { - "description": "A list of full type names of requested contexts.", + "parameters": { + "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.", "items": { - "type": "string" + "$ref": "SystemParameter" }, "type": "array" } }, - "id": "ContextRule", - "description": "A context rule provides information about the context for an individual API\nelement.", + "id": "SystemParameterRule", + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", "type": "object" }, - "MetricDescriptor": { + "VisibilityRule": { + "id": "VisibilityRule", + "description": "A visibility rule provides visibility configuration for an individual API\nelement.", "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" - ] - }, - "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\".", + "restriction": { + "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.", "type": "string" }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", + "selector": { + "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" - }, - "unit": { - "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.", + } + } + }, + "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": { + "delete": { + "description": "Used for deleting a resource.", "type": "string" }, - "labels": { - "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", - "items": { - "$ref": "LabelDescriptor" - }, - "type": "array" - }, - "name": { - "description": "The resource name of the metric descriptor. Depending on the\nimplementation, the name typically includes: (1) the parent resource name\nthat defines the scope of the metric type or of its data; and (2) the\nmetric's URL-encoded type, which also appears in the `type` field of this\ndescriptor. For example, following is the resource name of a custom\nmetric within the GCP project `my-project-id`:\n\n \"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"", + "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" }, - "type": { + "post": { "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\"" + "description": "Used for creating a resource." }, - "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" - } - }, - "id": "MetricDescriptor", - "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable." - }, - "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\"`.", + "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": { + "description": "Optional. 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 \"create\", but\n for backwards compatability with apiary, it is specified as insert.", "type": "string" - } - }, - "id": "SourceContext", - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", - "type": "object" - }, - "Endpoint": { - "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": { - "apis": { - "description": "The list of APIs served by this endpoint.\n\nIf no APIs are specified this translates to \"all APIs\" exported by the\nservice, as defined in the top-level service configuration.", + }, + "additionalBindings": { + "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).", "items": { - "type": "string" + "$ref": "HttpRule" }, "type": "array" }, - "allowCors": { - "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", - "type": "boolean" + "responseBody": { + "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.", + "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 intented\nalias.\n\nAdditional names that this endpoint will be hosted on.", - "items": { - "type": "string" - }, - "type": "array" + "restCollection": { + "description": "Optional. 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" }, - "name": { - "description": "The canonical name of this endpoint.", + "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": { + "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.", "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\".", + "get": { + "description": "Used for listing and getting information about resources.", "type": "string" }, - "features": { - "description": "The list of features enabled on this endpoint.", - "items": { - "type": "string" - }, - "type": "array" + "put": { + "description": "Used for updating a resource.", + "type": "string" } }, - "id": "Endpoint" + "id": "HttpRule" }, - "ListEnabledServicesResponse": { - "id": "ListEnabledServicesResponse", - "description": "Response message for `ListEnabledServices` method.", + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", "type": "object", "properties": { - "nextPageToken": { - "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", "type": "string" }, - "services": { - "description": "Services enabled for the specified parent.", + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", "items": { - "$ref": "PublishedService" + "type": "string" }, "type": "array" } - } + }, + "id": "MonitoringDestination" }, - "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", + "Visibility": { "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" + "rules": { + "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "VisibilityRule" + }, + "type": "array" } }, - "id": "OAuthRequirements" + "id": "Visibility", + "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", + "type": "object" }, - "Usage": { - "description": "Configuration controlling usage of a service.", + "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": { - "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.", - "items": { - "$ref": "UsageRule" - }, - "type": "array" - }, - "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'.", + "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "type": "string" + "$ref": "SystemParameterRule" }, "type": "array" } }, - "id": "Usage" + "id": "SystemParameters" }, - "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`.", + "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": { - "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.", + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", "items": { - "$ref": "ContextRule" + "$ref": "QuotaLimit" + }, + "type": "array" + }, + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "items": { + "$ref": "MetricRule" }, "type": "array" } }, - "id": "Context" + "id": "Quota" }, - "LogDescriptor": { + "Step": { + "description": "Represents the status of one operation step.", "type": "object", "properties": { - "displayName": { + "status": { + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "description": "The status code.", "type": "string", - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise." + "enumDescriptions": [ + "Unspecifed code.", + "The operation or step has completed without errors.", + "The operation or step has not started yet.", + "The operation or step is in progress.", + "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.", + "The operation or step has completed with cancellation." + ] }, "description": { - "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", - "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": "string", + "description": "The short description of the step." + } + }, + "id": "Step" + }, + "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 \"/\".", "items": { - "$ref": "LabelDescriptor" + "type": "string" }, "type": "array" }, - "name": { - "description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].", - "type": "string" + "monitoredResource": { + "type": "string", + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section." } }, - "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": "LoggingDestination", + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project)." }, - "CustomErrorRule": { + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", "type": "object", "properties": { - "isErrorType": { - "type": "boolean", - "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload." + "value": { + "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,\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." }, - "selector": { - "type": "string", - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details." + "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", - "description": "A custom error rule." + "id": "Option" }, - "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.", + "Logging": { "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" - }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", - "type": "string" - }, - "displayName": { - "type": "string", - "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": { - "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\"`.", + "consumerDestinations": { + "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.", "items": { - "$ref": "LabelDescriptor" + "$ref": "LoggingDestination" }, "type": "array" + }, + "producerDestinations": { + "items": { + "$ref": "LoggingDestination" + }, + "type": "array", + "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." } }, - "id": "MonitoredResourceDescriptor" + "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" }, - "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": { + "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": { - "dropzone": { + "defaultLimit": { "type": "string", - "description": "Name of the Scotty dropzone to use for the current API." - }, - "maxDirectDownloadSize": { "format": "int64", - "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", - "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." }, - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "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.\n\nUsed by metric-based quotas only.", + "type": "string" }, - "enabled": { - "description": "Whether download is enabled.", - "type": "boolean" + "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." }, - "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": { + "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" }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", - "type": "boolean" - } - }, - "id": "MediaDownload" - }, - "CustomAuthRequirements": { - "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "values": { + "additionalProperties": { + "format": "int64", + "type": "string" + }, + "description": "Tiered limit values, 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\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\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.\n\nUsed by metric-based quotas only.", "type": "string" - } - }, - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider.", - "type": "object" - }, - "DisableServiceRequest": { - "description": "Request message for DisableService method.", - "type": "object", - "properties": {}, - "id": "DisableServiceRequest" - }, - "SearchServicesResponse": { - "description": "Response message for SearchServices method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", + }, + "maxLimit": { + "type": "string", + "format": "int64", + "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." + }, + "name": { + "description": "Name of the quota limit. The name is used to refer to the limit when\noverriding the default limit on per-consumer basis.\n\nFor metric-based quota limits, the name must be provided, and it must be\nunique within the service. The name can only include alphanumeric\ncharacters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.\n\nThe name of a limit is used as a unique identifier for this limit.\nTherefore, once a limit has been put into use, its name should be\nimmutable. You can use the display_name field to provide a user-friendly\nname for the limit. The display name can be evolved over time without\naffecting the identity of the limit.", "type": "string" }, - "services": { - "items": { - "$ref": "PublishedService" - }, - "type": "array", - "description": "Services available publicly or available to the authenticated caller." + "duration": { + "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.", + "type": "string" + }, + "freeTier": { + "format": "int64", + "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.", + "type": "string" } }, - "id": "SearchServicesResponse" + "id": "QuotaLimit" }, - "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.", "type": "object", "properties": { - "mimeTypes": { - "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", - "items": { - "type": "string" - }, - "type": "array" + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" }, - "maxSize": { - "format": "int64", - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "name": { + "description": "The simple name of this method.", "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" + "requestTypeUrl": { + "description": "A URL of the input message type.", + "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.", + "requestStreaming": { + "description": "If true, the request is streamed.", "type": "boolean" }, - "dropzone": { + "syntax": { + "description": "The source syntax of this method.", "type": "string", - "description": "Name of the Scotty dropzone to use for the current API." - }, - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", - "type": "boolean" + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ] }, - "uploadService": { - "type": "string", - "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." - } - }, - "id": "MediaUpload" - }, - "UsageRule": { - "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", - "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.", + "responseTypeUrl": { + "description": "The URL of the output message type.", "type": "string" }, - "skipServiceControl": { - "description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled.", - "type": "boolean" - }, - "allowUnregisteredCalls": { - "description": "True, if the method allows unregistered calls; false otherwise.", - "type": "boolean" + "options": { + "items": { + "$ref": "Option" + }, + "type": "array", + "description": "Any metadata attached to the method." } - } + }, + "id": "Method" }, - "AuthRequirement": { - "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).", + "Mixin": { + "description": "Declares an API to be included in this API. The including API must\nredeclare all the methods from the included API, but documentation\nand 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 API plus the root path if 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": { - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "name": { + "description": "The fully qualified name of the API which is included.", "type": "string" }, - "audiences": { + "root": { "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" + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted." } - } + }, + "id": "Mixin" }, - "Documentation": { + "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": { - "documentationRootUrl": { - "type": "string", - "description": "The URL to the root of documentation." - }, - "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" - }, "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": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "DocumentationRule" + "$ref": "CustomErrorRule" }, "type": "array" }, - "pages": { - "description": "The top level pages for the documentation set.", + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "items": { - "$ref": "Page" + "type": "string" }, "type": "array" - }, - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" } }, - "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\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.", - "type": "object" + "id": "CustomError" }, - "BackendRule": { - "description": "A backend rule provides configuration for an individual API element.", + "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": { - "deadline": { - "format": "double", - "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.", - "type": "number" - }, - "minDeadline": { - "format": "double", - "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "type": "number" - }, - "address": { - "description": "The address of the API backend.", - "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" }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" + "rules": { + "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "items": { + "$ref": "HttpRule" + }, + "type": "array" } }, - "id": "BackendRule" + "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": { - "customAuth": { - "description": "Configuration for custom authentication.", - "$ref": "CustomAuthRequirements" - }, - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "requirements": { - "description": "Requirements for additional authentication providers.", + "sourceFiles": { + "description": "All files used during config generation.", "items": { - "$ref": "AuthRequirement" + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } }, "type": "array" - }, - "allowWithoutCredential": { - "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.", - "type": "boolean" - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + } + }, + "id": "SourceInfo" + }, + "Control": { + "type": "object", + "properties": { + "environment": { + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", "type": "string" } }, - "id": "AuthenticationRule" + "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." }, - "Api": { - "description": "Api is a light-weight descriptor for a protocol buffer service.", + "SystemParameter": { + "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", "properties": { - "mixins": { - "description": "Included APIs. See Mixin.", - "items": { - "$ref": "Mixin" - }, - "type": "array" - }, - "options": { - "description": "Any metadata attached to the API.", - "items": { - "$ref": "Option" - }, - "type": "array" - }, - "methods": { - "description": "The methods of this api, in unspecified order.", - "items": { - "$ref": "Method" - }, - "type": "array" - }, "name": { - "type": "string", - "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name." + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "type": "string" }, - "syntax": { + "urlQueryParameter": { "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of the service." - }, - "sourceContext": { - "description": "Source context for the protocol buffer service represented by this\nmessage.", - "$ref": "SourceContext" - }, - "version": { - "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided 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\nAPI, 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, none-GA apis.\n", - "type": "string" - } - }, - "id": "Api" - }, - "MetricRule": { - "properties": { - "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" - } + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive." }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", "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.", - "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", + "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 authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "consumerDestinations": { + "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.", "items": { - "$ref": "AuthenticationRule" + "$ref": "MonitoringDestination" }, "type": "array" }, - "providers": { - "description": "Defines a set of authentication providers that a service supports.", + "producerDestinations": { + "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.", "items": { - "$ref": "AuthProvider" + "$ref": "MonitoringDestination" }, "type": "array" } }, - "id": "Authentication" + "id": "Monitoring" }, - "Operation": { + "Field": { + "id": "Field", + "description": "A single field of a message type.", + "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`.", + "jsonName": { + "description": "The field JSON name.", "type": "string" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "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." + ] }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "options": { + "items": { + "$ref": "Option" }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" + "type": "array", + "description": "The protocol buffer options." }, - "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.", + "oneofIndex": { + "format": "int32", + "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.", + "type": "integer" + }, + "packed": { + "description": "Whether to use alternative packed wire representation.", "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": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" - }, - "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", - "type": "object", - "properties": { + "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." + ] + }, + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", + "type": "string" + }, "name": { - "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.", + "description": "The field name.", "type": "string" }, - "content": { - "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.", + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", "type": "string" }, - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", - "items": { - "$ref": "Page" - }, - "type": "array" + "number": { + "format": "int32", + "description": "The field number.", + "type": "integer" } - }, - "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.", + "Enum": { + "description": "Enum type definition.", "type": "object", "properties": { - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "options": { + "description": "Protocol buffer options.", + "items": { + "$ref": "Option" + }, + "type": "array" }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", - "type": "string" + "syntax": { + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "enumvalue": { + "description": "Enum value definitions.", "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "$ref": "EnumValue" }, "type": "array" + }, + "name": { + "description": "Enum type name.", + "type": "string" } }, - "id": "Status" + "id": "Enum" }, - "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).", + "EnableServiceRequest": { + "type": "object", + "properties": {}, + "id": "EnableServiceRequest", + "description": "Request message for EnableService method." + }, + "LabelDescriptor": { + "description": "A description of a label.", "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", + "key": { + "description": "The label key.", "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" - }, - "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" + "description": { + "type": "string", + "description": "A human-readable description for the label." }, - "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" + "valueType": { + "type": "string", + "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." } }, - "id": "AuthProvider" + "id": "LabelDescriptor" }, - "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": { "type": "object", "properties": { - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration." - }, - "experimental": { - "description": "Experimental configuration.", - "$ref": "Experimental" - }, - "control": { - "description": "Configuration for the service control plane.", - "$ref": "Control" - }, - "configVersion": { - "type": "integer", - "format": "uint32", - "description": "The version of the service configuration. The config version may\ninfluence interpretation of the configuration, for example, to\ndetermine defaults. This is documented together with applicable\noptions. The current default for the config version itself is `3`." - }, - "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.", + "fields": { + "description": "The list of fields.", "items": { - "$ref": "Type" + "$ref": "Field" }, "type": "array" }, - "visibility": { - "$ref": "Visibility", - "description": "API visibility configuration." - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, "name": { - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", - "type": "string" - }, - "customError": { - "description": "Custom error configuration.", - "$ref": "CustomError" - }, - "title": { - "description": "The product title for this service.", - "type": "string" - }, - "endpoints": { - "items": { - "$ref": "Endpoint" - }, - "type": "array", - "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.", - "items": { - "$ref": "Api" - }, - "type": "array" - }, - "logs": { - "description": "Defines the logs used by this service.", - "items": { - "$ref": "LogDescriptor" - }, - "type": "array" - }, - "types": { - "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32", - "items": { - "$ref": "Type" - }, - "type": "array" - }, - "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": { - "$ref": "Logging", - "description": "Logging configuration." - }, - "monitoredResources": { - "items": { - "$ref": "MonitoredResourceDescriptor" - }, - "type": "array", - "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations." - }, - "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", - "items": { - "$ref": "Enum" - }, - "type": "array" - }, - "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." + "description": "The fully qualified message name." }, - "metrics": { - "description": "Defines the metrics used by this service.", + "oneofs": { "items": { - "$ref": "MetricDescriptor" + "type": "string" }, - "type": "array" - } - }, - "id": "Service" - }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", - "properties": { - "number": { - "format": "int32", - "description": "Enum value number.", - "type": "integer" + "type": "array", + "description": "The list of types appearing in `oneof` definitions in this type." }, - "name": { - "description": "Enum value name.", + "syntax": { + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", "type": "string" }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, "options": { - "description": "Protocol buffer options.", + "description": "The protocol buffer options.", "items": { "$ref": "Option" }, "type": "array" } }, - "id": "EnumValue" + "id": "Type", + "description": "A protocol buffer message type." }, - "CustomHttpPattern": { - "description": "A custom pattern is used for defining custom HTTP verb.", + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", "type": "object", "properties": { - "path": { - "description": "The path matched by this custom verb.", - "type": "string" - }, - "kind": { - "description": "The name of this custom HTTP verb.", - "type": "string" + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." } }, - "id": "CustomHttpPattern" + "id": "Experimental" }, - "OperationMetadata": { - "description": "The metadata associated with a long running operation resource.", + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", "type": "object", "properties": { - "startTime": { - "format": "google-datetime", - "description": "The start time of the operation.", - "type": "string" - }, - "steps": { - "description": "Detailed status information for each step. The order is undetermined.", - "items": { - "$ref": "Step" - }, - "type": "array" - }, - "resourceNames": { - "description": "The full name of the resources that this operation is directly\nassociated with.", + "rules": { + "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "type": "string" + "$ref": "BackendRule" }, "type": "array" - }, - "progressPercentage": { - "format": "int32", - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "type": "integer" } }, - "id": "OperationMetadata" + "id": "Backend" }, - "SystemParameterRule": { - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "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": { - "parameters": { - "items": { - "$ref": "SystemParameter" - }, - "type": "array", - "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." - }, - "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.", + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", "type": "string" } }, - "id": "SystemParameterRule" + "id": "AuthorizationConfig" }, - "PublishedService": { + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", "type": "object", "properties": { - "service": { - "$ref": "Service", - "description": "The service's published configuration." + "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" }, - "name": { - "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com", + "description": { + "type": "string", + "description": "Description of the selected API(s)." + }, + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", "type": "string" } }, - "id": "PublishedService", - "description": "The published version of a Service that is managed by\nGoogle Service Management." + "id": "DocumentationRule" }, - "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.", + "ContextRule": { + "id": "ContextRule", + "description": "A context rule provides information about the context for an individual API\nelement.", "type": "object", "properties": { - "restMethodName": { - "description": "Optional. 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 \"create\", but\n for backwards compatability with apiary, it is specified as insert.", - "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).", + "provided": { + "description": "A list of full type names of provided contexts.", "items": { - "$ref": "HttpRule" + "type": "string" }, "type": "array" }, - "restCollection": { - "type": "string", - "description": "Optional. 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." - }, - "responseBody": { - "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.", - "type": "string" - }, - "mediaUpload": { - "$ref": "MediaUpload", - "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods." + "requested": { + "description": "A list of full type names of requested contexts.", + "items": { + "type": "string" + }, + "type": "array" }, "selector": { - "description": "Selects methods 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" + } + } + }, + "MetricDescriptor": { + "properties": { + "type": { + "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"", "type": "string" }, - "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" + "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" }, - "get": { + "metricKind": { "type": "string", - "description": "Used for listing and getting information about resources." + "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." }, - "patch": { - "description": "Used for updating a resource.", + "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\".", "type": "string" }, - "put": { - "description": "Used for updating a resource.", + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", "type": "string" }, - "delete": { - "description": "Used for deleting a resource.", + "unit": { + "description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.", "type": "string" }, - "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" + "labels": { + "description": "The set of labels that can be used to describe a specific\ninstance of this metric type. For example, the\n`appengine.googleapis.com/http/server/response_latencies` metric\ntype has a label for the HTTP response code, `response_code`, so\nyou can look at latencies for successful responses or just\nfor responses that failed.", + "items": { + "$ref": "LabelDescriptor" + }, + "type": "array" }, - "post": { - "description": "Used for creating a resource.", + "name": { + "description": "The resource name of the metric descriptor. Depending on the\nimplementation, the name typically includes: (1) the parent resource name\nthat defines the scope of the metric type or of its data; and (2) the\nmetric's URL-encoded type, which also appears in the `type` field of this\ndescriptor. For example, following is the resource name of a custom\nmetric within the GCP project `my-project-id`:\n\n \"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"", "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" + "id": "MetricDescriptor", + "description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.", + "type": "object" }, - "VisibilityRule": { - "description": "A visibility rule provides visibility configuration for an individual API\nelement.", + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", "type": "object", "properties": { - "restriction": { - "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.", + "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" + }, + "Endpoint": { + "id": "Endpoint", + "description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true", + "type": "object", + "properties": { + "features": { + "description": "The list of features enabled on this endpoint.", + "items": { + "type": "string" + }, + "type": "array" }, - "selector": { - "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.", + "apis": { + "description": "The list of APIs served by this endpoint.\n\nIf no APIs are specified this translates to \"all APIs\" exported by the\nservice, as defined in the top-level service configuration.", + "items": { + "type": "string" + }, + "type": "array" + }, + "allowCors": { + "description": "Allowing\n[CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka\ncross-domain traffic, would allow the backends served from this endpoint to\nreceive and respond to HTTP OPTIONS requests. The response will be used by\nthe browser to determine whether the subsequent cross-origin request is\nallowed to proceed.", + "type": "boolean" + }, + "aliases": { + "description": "DEPRECATED: This field is no longer supported. Instead of using aliases,\nplease specify multiple google.api.Endpoint for each of the intented\nalias.\n\nAdditional names that this endpoint will be hosted on.", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "The canonical name of this endpoint.", + "type": "string" + }, + "target": { + "description": "The specification of an Internet routable address of API frontend that will\nhandle requests to this [API Endpoint](https://cloud.google.com/apis/design/glossary).\nIt should be either a valid IPv4 address or a fully-qualified domain name.\nFor example, \"8.8.8.8\" or \"myservice.appspot.com\".", + "type": "string" + } + } + }, + "ListEnabledServicesResponse": { + "properties": { + "nextPageToken": { + "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", "type": "string" + }, + "services": { + "description": "Services enabled for the specified parent.", + "items": { + "$ref": "PublishedService" + }, + "type": "array" } }, - "id": "VisibilityRule" + "id": "ListEnabledServicesResponse", + "description": "Response message for `ListEnabledServices` method.", + "type": "object" }, - "MonitoringDestination": { - "id": "MonitoringDestination", - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "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": { - "monitoredResource": { + "canonicalScopes": { "type": "string", - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section." + "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": "OAuthRequirements" + }, + "Usage": { + "description": "Configuration controlling usage of a service.", + "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.", + "items": { + "$ref": "UsageRule" + }, + "type": "array" }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "requirements": { + "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.", "items": { "type": "string" }, "type": "array" + }, + "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" }, - "Visibility": { - "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.", + "Context": { + "id": "Context", + "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.", "type": "object", "properties": { "rules": { - "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", "items": { - "$ref": "VisibilityRule" + "$ref": "ContextRule" + }, + "type": "array" + } + } + }, + "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" + }, + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" + }, + "labels": { + "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.", + "items": { + "$ref": "LabelDescriptor" }, "type": "array" } }, - "id": "Visibility" + "id": "LogDescriptor" }, - "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.", + "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": { - "rules": { + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" + }, + "displayName": { + "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.", + "type": "string" + }, + "type": { + "type": "string", + "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." + }, + "labels": { + "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.", "items": { - "$ref": "SystemParameterRule" + "$ref": "LabelDescriptor" }, - "type": "array", - "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" + }, + "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": "SystemParameters" - } - } + "id": "MonitoredResourceDescriptor" + }, + "CustomErrorRule": { + "type": "object", + "properties": { + "isErrorType": { + "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.", + "type": "boolean" + }, + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + } + }, + "id": "CustomErrorRule", + "description": "A custom error rule." + }, + "MediaDownload": { + "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": { + "type": "boolean", + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend." + }, + "maxDirectDownloadSize": { + "format": "int64", + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "type": "string" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + } + }, + "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": { + "nextPageToken": { + "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", + "type": "string" + }, + "services": { + "description": "Services available publicly or available to the authenticated caller.", + "items": { + "$ref": "PublishedService" + }, + "type": "array" + } + } + }, + "MediaUpload": { + "type": "object", + "properties": { + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "progressNotification": { + "type": "boolean", + "description": "Whether to receive a notification for progress changes of media upload." + }, + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.", + "type": "boolean" + }, + "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" + }, + "maxSize": { + "format": "int64", + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "type": "string" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "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." + }, + "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": { + "type": "boolean", + "description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled." + }, + "allowUnregisteredCalls": { + "description": "True, if the method allows unregistered calls; false otherwise.", + "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": { + "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" + }, + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "type": "string" + } + }, + "id": "AuthRequirement" + } + }, + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "protocol": "rest", + "canonicalName": "Service User", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/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" + } + } + } + }, + "rootUrl": "https://serviceuser.googleapis.com/", + "ownerDomain": "google.com", + "name": "serviceuser", + "batchPath": "batch", + "title": "Google Service User API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "services": { + "methods": { + "disable": { + "flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable", + "id": "serviceuser.projects.services.disable", + "path": "v1/{+name}: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": { + "location": "path", + "description": "Name of the consumer and the service to disable for that consumer.\n\nThe Service User implementation accepts the following forms for consumer:\n- \"project:\u003cproject_id\u003e\"\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:disable", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/services/[^/]+$" + } + } + }, + "enable": { + "flatPath": "v1/projects/{projectsId}/services/{servicesId}: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", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/services/[^/]+$", + "location": "path", + "description": "Name of the consumer and the service to enable for that consumer.\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:enable", + "type": "string", + "required": true + } + } + }, + "list": { + "response": { + "$ref": "ListEnabledServicesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "format": "int32", + "description": "Requested size of the next page of data." + }, + "parent": { + "description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project", + "type": "string", + "required": true, + "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}/services", + "id": "serviceuser.projects.services.list", + "path": "v1/{+parent}/services", + "description": "List enabled services for the specified consumer." + } + } + } + } + }, + "services": { + "methods": { + "search": { + "id": "serviceuser.services.search", + "path": "v1/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": { + "pageSize": { + "format": "int32", + "description": "Requested size of the next page of data.", + "type": "integer", + "location": "query" + }, + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/services:search" + } + } + } + }, + "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" + }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "$.xgafv": { + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ] + }, + "alt": { + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "description": "Data format for response.", + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + }, + "key": { + "location": "query", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string" + }, + "quotaUser": { + "type": "string", + "location": "query", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." + }, + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + }, + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean", + "location": "query" + } + }, + "version": "v1", + "baseUrl": "https://serviceuser.googleapis.com/" } diff --git a/DiscoveryJson/sheets_v4.json b/DiscoveryJson/sheets_v4.json index d5801785d4..8066070eff 100644 --- a/DiscoveryJson/sheets_v4.json +++ b/DiscoveryJson/sheets_v4.json @@ -1,4056 +1,103 @@ { - "version": "v4", - "baseUrl": "https://sheets.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Reads and writes Google Sheets.", - "servicePath": "", - "basePath": "", - "id": "sheets:v4", - "documentationLink": "https://developers.google.com/sheets/", - "revision": "20170707", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "FindReplaceResponse": { - "properties": { - "valuesChanged": { - "format": "int32", - "description": "The number of non-formula cells changed.", - "type": "integer" - }, - "occurrencesChanged": { - "format": "int32", - "description": "The number of occurrences (possibly multiple within a cell) changed.\nFor example, if replacing `\"e\"` with `\"o\"` in `\"Google Sheets\"`, this would\nbe `\"3\"` because `\"Google Sheets\"` -\u003e `\"Googlo Shoots\"`.", - "type": "integer" - }, - "rowsChanged": { - "format": "int32", - "description": "The number of rows changed.", - "type": "integer" - }, - "sheetsChanged": { - "format": "int32", - "description": "The number of sheets changed.", - "type": "integer" - }, - "formulasChanged": { - "format": "int32", - "description": "The number of formula cells changed.", - "type": "integer" - } - }, - "id": "FindReplaceResponse", - "description": "The result of the find/replace.", - "type": "object" - }, - "DeleteEmbeddedObjectRequest": { - "properties": { - "objectId": { - "format": "int32", - "description": "The ID of the embedded object to delete.", - "type": "integer" - } - }, - "id": "DeleteEmbeddedObjectRequest", - "description": "Deletes the embedded object with the given ID.", - "type": "object" - }, - "DuplicateFilterViewRequest": { - "properties": { - "filterId": { - "format": "int32", - "description": "The ID of the filter being duplicated.", - "type": "integer" - } - }, - "id": "DuplicateFilterViewRequest", - "description": "Duplicates a particular filter view.", - "type": "object" - }, - "DeleteSheetRequest": { - "properties": { - "sheetId": { - "format": "int32", - "description": "The ID of the sheet to delete.", - "type": "integer" - } - }, - "id": "DeleteSheetRequest", - "description": "Deletes the requested sheet.", - "type": "object" - }, - "UpdateConditionalFormatRuleResponse": { - "properties": { - "newRule": { - "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)", - "$ref": "ConditionalFormatRule" - }, - "oldIndex": { - "format": "int32", - "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).", - "type": "integer" - }, - "oldRule": { - "$ref": "ConditionalFormatRule", - "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule)." - }, - "newIndex": { - "format": "int32", - "description": "The index of the new rule.", - "type": "integer" - } - }, - "id": "UpdateConditionalFormatRuleResponse", - "description": "The result of updating a conditional format rule.", - "type": "object" - }, - "ConditionValue": { - "properties": { - "userEnteredValue": { - "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).", - "type": "string" - }, - "relativeDate": { - "enum": [ - "RELATIVE_DATE_UNSPECIFIED", - "PAST_YEAR", - "PAST_MONTH", - "PAST_WEEK", - "YESTERDAY", - "TODAY", - "TOMORROW" + "ownerName": "Google", + "resources": { + "spreadsheets": { + "methods": { + "batchUpdate": { + "response": { + "$ref": "BatchUpdateSpreadsheetResponse" + }, + "parameterOrder": [ + "spreadsheetId" ], - "description": "A relative date (based on the current date).\nValid only if the type is\nDATE_BEFORE,\nDATE_AFTER,\nDATE_ON_OR_BEFORE or\nDATE_ON_OR_AFTER.\n\nRelative dates are not supported in data validation.\nThey are supported only in conditional formatting and\nconditional filters.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The value is one year before today.", - "The value is one month before today.", - "The value is one week before today.", - "The value is yesterday.", - "The value is today.", - "The value is tomorrow." - ] - } - }, - "id": "ConditionValue", - "description": "The value of the condition.", - "type": "object" - }, - "DuplicateSheetRequest": { - "description": "Duplicates the contents of a sheet.", - "type": "object", - "properties": { - "newSheetId": { - "format": "int32", - "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.", - "type": "integer" - }, - "insertSheetIndex": { - "format": "int32", - "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.", - "type": "integer" - }, - "newSheetName": { - "description": "The name of the new sheet. If empty, a new name is chosen for you.", - "type": "string" - }, - "sourceSheetId": { - "format": "int32", - "description": "The sheet to duplicate.", - "type": "integer" - } - }, - "id": "DuplicateSheetRequest" - }, - "ExtendedValue": { - "description": "The kinds of value that a cell in a spreadsheet can have.", - "type": "object", - "properties": { - "errorValue": { - "$ref": "ErrorValue", - "description": "Represents an error.\nThis field is read-only." - }, - "formulaValue": { - "description": "Represents a formula.", - "type": "string" - }, - "boolValue": { - "description": "Represents a boolean value.", - "type": "boolean" - }, - "stringValue": { - "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.", - "type": "string" - }, - "numberValue": { - "format": "double", - "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.", - "type": "number" - } - }, - "id": "ExtendedValue" - }, - "BatchClearValuesResponse": { - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object", - "properties": { - "clearedRanges": { - "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", - "items": { - "type": "string" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ], + "parameters": { + "spreadsheetId": { + "location": "path", + "description": "The spreadsheet to apply the updates to.", + "type": "string", + "required": true + } }, - "type": "array" - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - } - }, - "id": "BatchClearValuesResponse" - }, - "Spreadsheet": { - "description": "Resource that represents a spreadsheet.", - "type": "object", - "properties": { - "properties": { - "description": "Overall properties of a spreadsheet.", - "$ref": "SpreadsheetProperties" - }, - "namedRanges": { - "description": "The named ranges defined in a spreadsheet.", - "items": { - "$ref": "NamedRange" + "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate", + "id": "sheets.spreadsheets.batchUpdate", + "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate", + "request": { + "$ref": "BatchUpdateSpreadsheetRequest" }, - "type": "array" + "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes." }, - "sheets": { - "description": "The sheets that are part of a spreadsheet.", - "items": { - "$ref": "Sheet" + "create": { + "request": { + "$ref": "Spreadsheet" }, - "type": "array" - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet.\nThis field is read-only.", - "type": "string" + "description": "Creates a spreadsheet, returning the newly created spreadsheet.", + "response": { + "$ref": "Spreadsheet" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ], + "parameters": {}, + "flatPath": "v4/spreadsheets", + "id": "sheets.spreadsheets.create", + "path": "v4/spreadsheets" }, - "spreadsheetUrl": { - "description": "The url of the spreadsheet.\nThis field is read-only.", - "type": "string" - } - }, - "id": "Spreadsheet" - }, - "AddChartRequest": { - "properties": { - "chart": { - "description": "The chart that should be added to the spreadsheet, including the position\nwhere it should be placed. The chartId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a chart that already exists.)", - "$ref": "EmbeddedChart" - } - }, - "id": "AddChartRequest", - "description": "Adds a chart to a sheet in the spreadsheet.", - "type": "object" - }, - "HistogramSeries": { - "description": "A histogram series containing the series color and data.", - "type": "object", - "properties": { - "barColor": { - "$ref": "Color", - "description": "The color of the column representing this series in each bucket.\nThis field is optional." - }, - "data": { - "$ref": "ChartData", - "description": "The data for this histogram series." - } - }, - "id": "HistogramSeries" - }, - "BandedRange": { - "properties": { - "range": { - "description": "The range over which these properties are applied.", - "$ref": "GridRange" - }, - "bandedRangeId": { - "format": "int32", - "description": "The id of the banded range.", - "type": "integer" - }, - "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" - }, - "rowProperties": { - "description": "Properties for row bands. These properties will be applied on a row-by-row\nbasis throughout all the rows in the range. At least one of\nrow_properties or column_properties must be specified.", - "$ref": "BandingProperties" - } - }, - "id": "BandedRange", - "description": "A banded (alternating colors) range in a sheet.", - "type": "object" - }, - "UpdateProtectedRangeRequest": { - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "protectedRange": { - "description": "The protected range to update with the new properties.", - "$ref": "ProtectedRange" - } - }, - "id": "UpdateProtectedRangeRequest", - "description": "Updates an existing protected range with the specified\nprotectedRangeId.", - "type": "object" - }, - "TextFormat": { - "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" - }, - "italic": { - "description": "True if the text is italicized.", - "type": "boolean" - }, - "strikethrough": { - "description": "True if the text has a strikethrough.", - "type": "boolean" - }, - "fontSize": { - "format": "int32", - "description": "The size of the font.", - "type": "integer" - } - }, - "id": "TextFormat", - "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.", - "type": "object" - }, - "AddSheetResponse": { - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties of the newly added sheet." - } - }, - "id": "AddSheetResponse", - "description": "The result of adding a sheet.", - "type": "object" - }, - "AddFilterViewResponse": { - "description": "The result of adding a filter view.", - "type": "object", - "properties": { - "filter": { - "description": "The newly added filter view.", - "$ref": "FilterView" - } - }, - "id": "AddFilterViewResponse" - }, - "IterativeCalculationSettings": { - "properties": { - "convergenceThreshold": { - "format": "double", - "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.", - "type": "number" - }, - "maxIterations": { - "format": "int32", - "description": "When iterative calculation is enabled, the maximum number of calculation\nrounds to perform.", - "type": "integer" - } - }, - "id": "IterativeCalculationSettings", - "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.", - "type": "object" - }, - "SpreadsheetProperties": { - "properties": { - "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." + "get": { + "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nURL parameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.\n\nTo retrieve only subsets of the spreadsheet, use the\nranges URL parameter.\nMultiple ranges can be specified. Limiting the range will\nreturn only the portions of the spreadsheet that intersect the requested\nranges. Ranges are specified using A1 notation.", + "httpMethod": "GET", + "parameterOrder": [ + "spreadsheetId" ], - "enum": [ - "RECALCULATION_INTERVAL_UNSPECIFIED", - "ON_CHANGE", - "MINUTE", - "HOUR" + "response": { + "$ref": "Spreadsheet" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" ], - "description": "The amount of time to wait before volatile functions are recalculated.", - "type": "string" - }, - "defaultFormat": { - "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if the\ncell's format is equal to this default format.\nThis field is read-only.", - "$ref": "CellFormat" - }, - "title": { - "description": "The title of the spreadsheet.", - "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.", - "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", - "description": "Properties of a spreadsheet.", - "type": "object" - }, - "OverlayPosition": { - "properties": { - "widthPixels": { - "format": "int32", - "description": "The width of the object, in pixels. Defaults to 600.", - "type": "integer" - }, - "offsetXPixels": { - "format": "int32", - "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.", - "type": "integer" - }, - "anchorCell": { - "$ref": "GridCoordinate", - "description": "The cell the object is anchored to." - }, - "heightPixels": { - "format": "int32", - "description": "The height of the object, in pixels. Defaults to 371.", - "type": "integer" - }, - "offsetYPixels": { - "format": "int32", - "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.", - "type": "integer" - } - }, - "id": "OverlayPosition", - "description": "The location an object is overlaid on top of a grid.", - "type": "object" - }, - "RepeatCellRequest": { - "description": "Updates all cells in the range to the values in the given Cell object.\nOnly the fields listed in the fields field are updated; others are\nunchanged.\n\nIf writing a cell with a formula, the formula's ranges will automatically\nincrement for each field in the range.\nFor example, if writing a cell with formula `=A1` into range B2:C4,\nB2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,\nC2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.\n\nTo keep the formula's ranges static, use the `$` indicator.\nFor example, use the formula `=$A$1` to prevent both the row and the\ncolumn from incrementing.", - "type": "object", - "properties": { - "range": { - "description": "The range to repeat the cell in.", - "$ref": "GridRange" - }, - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "cell": { - "description": "The data to write.", - "$ref": "CellData" - } - }, - "id": "RepeatCellRequest" - }, - "AddChartResponse": { - "properties": { - "chart": { - "description": "The newly added chart.", - "$ref": "EmbeddedChart" - } - }, - "id": "AddChartResponse", - "description": "The result of adding a chart to a spreadsheet.", - "type": "object" - }, - "InsertDimensionRequest": { - "properties": { - "inheritFromBefore": { - "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green).", - "type": "boolean" - }, - "range": { - "description": "The dimensions to insert. Both the start and end indexes must be bounded.", - "$ref": "DimensionRange" - } - }, - "id": "InsertDimensionRequest", - "description": "Inserts rows or columns in a sheet at a particular index.", - "type": "object" - }, - "UpdateSpreadsheetPropertiesRequest": { - "description": "Updates properties of a spreadsheet.", - "type": "object", - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "properties": { - "$ref": "SpreadsheetProperties", - "description": "The properties to update." - } - }, - "id": "UpdateSpreadsheetPropertiesRequest" - }, - "ProtectedRange": { - "description": "A protected range.", - "type": "object", - "properties": { - "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.", - "items": { - "$ref": "GridRange" - }, - "type": "array" - }, - "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": { - "format": "int32", - "description": "The ID of the protected range.\nThis field is read-only.", - "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" - }, - "editors": { - "$ref": "Editors", - "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection." - }, - "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" - } - }, - "id": "ProtectedRange" - }, - "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" - }, - "data": { - "description": "The new values to apply to the spreadsheet.", - "items": { - "$ref": "ValueRange" - }, - "type": "array" - }, - "valueInputOption": { - "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." - ] - }, - "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)." - ] - } - }, - "id": "BatchUpdateValuesRequest" - }, - "DimensionProperties": { - "description": "Properties about a dimension.", - "type": "object", - "properties": { - "pixelSize": { - "format": "int32", - "description": "The height (if a row) or width (if a column) of the dimension in pixels.", - "type": "integer" - }, - "hiddenByUser": { - "description": "True if this dimension is explicitly hidden.", - "type": "boolean" - }, - "hiddenByFilter": { - "description": "True if this dimension is being filtered.\nThis field is read-only.", - "type": "boolean" - } - }, - "id": "DimensionProperties" - }, - "NamedRange": { - "description": "A named range.", - "type": "object", - "properties": { - "namedRangeId": { - "description": "The ID of the named range.", - "type": "string" - }, - "range": { - "$ref": "GridRange", - "description": "The range this represents." - }, - "name": { - "description": "The name of the named range.", - "type": "string" - } - }, - "id": "NamedRange" - }, - "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", - "properties": { - "sheetId": { - "format": "int32", - "description": "The sheet this span is on.", - "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." - ] - }, - "endIndex": { - "format": "int32", - "description": "The end (exclusive) of the span, or not set if unbounded.", - "type": "integer" - }, - "startIndex": { - "format": "int32", - "description": "The start (inclusive) of the span, or not set if unbounded.", - "type": "integer" - } - }, - "id": "DimensionRange" - }, - "CutPasteRequest": { - "properties": { - "destination": { - "description": "The top-left coordinate where the data should be pasted.", - "$ref": "GridCoordinate" - }, - "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. All the source data will be cut, regardless\nof what is pasted.", - "type": "string" - }, - "source": { - "$ref": "GridRange", - "description": "The source data to cut." - } - }, - "id": "CutPasteRequest", - "description": "Moves data from the source to the destination.", - "type": "object" - }, - "Borders": { - "properties": { - "bottom": { - "$ref": "Border", - "description": "The bottom border of the cell." - }, - "top": { - "description": "The top border of the cell.", - "$ref": "Border" - }, - "left": { - "description": "The left border of the cell.", - "$ref": "Border" - }, - "right": { - "$ref": "Border", - "description": "The right border of the cell." - } - }, - "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": { - "type": { - "enumDescriptions": [ - "Default value, do not use.", - "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", - "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", - "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." - ], - "enum": [ - "BASIC_CHART_TYPE_UNSPECIFIED", - "BAR", - "LINE", - "AREA", - "COLUMN", - "SCATTER", - "COMBO", - "STEPPED_AREA" - ], - "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" - }, - "series": { - "description": "The data being visualized in this chart series.", - "$ref": "ChartData" - }, - "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": [ - "Default value, do not use.", - "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", - "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", - "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." - ] - } - }, - "id": "BasicChartSeries" - }, - "AutoResizeDimensionsRequest": { - "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", - "type": "object", - "properties": { - "dimensions": { - "$ref": "DimensionRange", - "description": "The dimensions to automatically resize.\nOnly COLUMNS are supported." - } - }, - "id": "AutoResizeDimensionsRequest" - }, - "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": { - "innerHorizontal": { - "$ref": "Border", - "description": "The horizontal border to put within the range." - }, - "top": { - "description": "The border to put at the top of the range.", - "$ref": "Border" - }, - "left": { - "$ref": "Border", - "description": "The border to put at the left of the range." - }, - "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." - }, - "range": { - "description": "The range whose borders should be updated.", - "$ref": "GridRange" - } - }, - "id": "UpdateBordersRequest" - }, - "CellFormat": { - "description": "The format of a cell.", - "type": "object", - "properties": { - "verticalAlignment": { - "enumDescriptions": [ - "The vertical alignment is not specified. Do not use this.", - "The text is explicitly aligned to the top of the cell.", - "The text is explicitly aligned to the middle of the cell.", - "The text is explicitly aligned to the bottom of the cell." - ], - "enum": [ - "VERTICAL_ALIGN_UNSPECIFIED", - "TOP", - "MIDDLE", - "BOTTOM" - ], - "description": "The vertical alignment of the value in the cell.", - "type": "string" - }, - "padding": { - "description": "The padding of the cell.", - "$ref": "Padding" - }, - "textDirection": { - "enumDescriptions": [ - "The text direction is not specified. Do not use this.", - "The text direction of left-to-right was set by the user.", - "The text direction of right-to-left was set by the user." - ], - "enum": [ - "TEXT_DIRECTION_UNSPECIFIED", - "LEFT_TO_RIGHT", - "RIGHT_TO_LEFT" - ], - "description": "The direction of the text in the cell.", - "type": "string" - }, - "borders": { - "$ref": "Borders", - "description": "The borders of the cell." - }, - "wrapStrategy": { - "enumDescriptions": [ - "The default value, do not use.", - "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |", - "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |", - "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |", - "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |" - ], - "enum": [ - "WRAP_STRATEGY_UNSPECIFIED", - "OVERFLOW_CELL", - "LEGACY_WRAP", - "CLIP", - "WRAP" - ], - "description": "The wrap strategy for the value in the cell.", - "type": "string" - }, - "textRotation": { - "description": "The rotation applied to text in a cell", - "$ref": "TextRotation" - }, - "numberFormat": { - "description": "A format describing how number values should be represented to the user.", - "$ref": "NumberFormat" - }, - "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" - }, - "horizontalAlignment": { - "enum": [ - "HORIZONTAL_ALIGN_UNSPECIFIED", - "LEFT", - "CENTER", - "RIGHT" - ], - "description": "The horizontal alignment of the value in the cell.", - "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." - ] - }, - "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": { - "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "clearedRange": { - "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)", - "type": "string" - } - }, - "id": "ClearValuesResponse", - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object" - }, - "DeleteConditionalFormatRuleRequest": { - "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", - "type": "object", - "properties": { - "index": { - "format": "int32", - "description": "The zero-based index of the rule to be deleted.", - "type": "integer" - }, - "sheetId": { - "format": "int32", - "description": "The sheet the rule is being deleted from.", - "type": "integer" - } - }, - "id": "DeleteConditionalFormatRuleRequest" - }, - "AddBandingResponse": { - "description": "The result of adding a banded range.", - "type": "object", - "properties": { - "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range that was added." - } - }, - "id": "AddBandingResponse" - }, - "DeleteNamedRangeRequest": { - "description": "Removes the named range with the given ID from the spreadsheet.", - "type": "object", - "properties": { - "namedRangeId": { - "description": "The ID of the named range to delete.", - "type": "string" - } - }, - "id": "DeleteNamedRangeRequest" - }, - "ChartData": { - "description": "The data included in a domain or series.", - "type": "object", - "properties": { - "sourceRange": { - "$ref": "ChartSourceRange", - "description": "The source ranges of the data." - } - }, - "id": "ChartData" - }, - "BatchGetValuesResponse": { - "description": "The response when retrieving more than one range of values in a spreadsheet.", - "type": "object", - "properties": { - "valueRanges": { - "description": "The requested values. The order of the ValueRanges is the same as the\norder of the requested ranges.", - "items": { - "$ref": "ValueRange" - }, - "type": "array" - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet the data was retrieved from.", - "type": "string" - } - }, - "id": "BatchGetValuesResponse" - }, - "UpdateBandingRequest": { - "description": "Updates properties of the supplied banded range.", - "type": "object", - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range to update with the new properties." - } - }, - "id": "UpdateBandingRequest" - }, - "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": { - "format": "float", - "description": "The amount of red in the color as a value in the interval [0, 1].", - "type": "number" - }, - "alpha": { - "format": "float", - "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).", - "type": "number" - }, - "blue": { - "format": "float", - "description": "The amount of blue in the color as a value in the interval [0, 1].", - "type": "number" - }, - "green": { - "format": "float", - "description": "The amount of green in the color as a value in the interval [0, 1].", - "type": "number" - } - }, - "id": "Color" - }, - "PivotGroup": { - "properties": { - "sortOrder": { - "enumDescriptions": [ - "Default value, do not use this.", - "Sort ascending.", - "Sort descending." - ], - "enum": [ - "SORT_ORDER_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The order the values in this group should be sorted.", - "type": "string" - }, - "valueBucket": { - "$ref": "PivotGroupSortValueBucket", - "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values." - }, - "valueMetadata": { - "description": "Metadata about values in the grouping.", - "items": { - "$ref": "PivotGroupValueMetadata" - }, - "type": "array" - }, - "showTotals": { - "description": "True if the pivot table should include the totals for this grouping.", - "type": "boolean" - }, - "sourceColumnOffset": { - "format": "int32", - "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`.", - "type": "integer" - } - }, - "id": "PivotGroup", - "description": "A single grouping (either row or column) in a pivot table.", - "type": "object" - }, - "PivotTable": { - "properties": { - "rows": { - "description": "Each row grouping in the pivot table.", - "items": { - "$ref": "PivotGroup" - }, - "type": "array" - }, - "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" - }, - "values": { - "description": "A list of values to include in the pivot table.", - "items": { - "$ref": "PivotValue" - }, - "type": "array" - }, - "source": { - "$ref": "GridRange", - "description": "The range the pivot table is reading data from." - }, - "columns": { - "description": "Each column grouping in the pivot table.", - "items": { - "$ref": "PivotGroup" - }, - "type": "array" - }, - "criteria": { - "additionalProperties": { - "$ref": "PivotFilterCriteria" - }, - "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.", - "type": "object" - } - }, - "id": "PivotTable", - "description": "A pivot table.", - "type": "object" - }, - "ChartSourceRange": { - "properties": { - "sources": { - "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) & all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12", - "items": { - "$ref": "GridRange" - }, - "type": "array" - } - }, - "id": "ChartSourceRange", - "description": "Source ranges for a chart.", - "type": "object" - }, - "ValueRange": { - "description": "Data within a range of the spreadsheet.", - "type": "object", - "properties": { - "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" - }, - "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.", - "items": { - "items": { - "type": "any" - }, - "type": "array" - }, - "type": "array" - }, - "majorDimension": { - "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 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" - } - }, - "id": "ValueRange" - }, - "AppendCellsRequest": { - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "rows": { - "description": "The data to append.", - "items": { - "$ref": "RowData" - }, - "type": "array" - }, - "sheetId": { - "format": "int32", - "description": "The sheet ID to append the data to.", - "type": "integer" - } - }, - "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": { - "$ref": "BandedRange", - "description": "The banded range to add. The bandedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" - } - }, - "id": "AddBandingRequest" - }, - "Response": { - "properties": { - "addFilterView": { - "$ref": "AddFilterViewResponse", - "description": "A reply from adding a filter view." - }, - "addBanding": { - "$ref": "AddBandingResponse", - "description": "A reply from adding a banded range." - }, - "addProtectedRange": { - "description": "A reply from adding a protected range.", - "$ref": "AddProtectedRangeResponse" - }, - "duplicateSheet": { - "description": "A reply from duplicating a sheet.", - "$ref": "DuplicateSheetResponse" - }, - "updateEmbeddedObjectPosition": { - "description": "A reply from updating an embedded object's position.", - "$ref": "UpdateEmbeddedObjectPositionResponse" - }, - "deleteConditionalFormatRule": { - "description": "A reply from deleting a conditional format rule.", - "$ref": "DeleteConditionalFormatRuleResponse" - }, - "duplicateFilterView": { - "description": "A reply from duplicating a filter view.", - "$ref": "DuplicateFilterViewResponse" - }, - "addChart": { - "$ref": "AddChartResponse", - "description": "A reply from adding a chart." - }, - "findReplace": { - "$ref": "FindReplaceResponse", - "description": "A reply from doing a find/replace." - }, - "addSheet": { - "description": "A reply from adding a sheet.", - "$ref": "AddSheetResponse" - }, - "updateConditionalFormatRule": { - "description": "A reply from updating a conditional format rule.", - "$ref": "UpdateConditionalFormatRuleResponse" - }, - "addNamedRange": { - "$ref": "AddNamedRangeResponse", - "description": "A reply from adding a named range." - } - }, - "id": "Response", - "description": "A single response from an update.", - "type": "object" - }, - "EmbeddedChart": { - "description": "A chart embedded in a sheet.", - "type": "object", - "properties": { - "chartId": { - "format": "int32", - "description": "The ID of the chart.", - "type": "integer" - }, - "position": { - "$ref": "EmbeddedObjectPosition", - "description": "The position of the chart." - }, - "spec": { - "$ref": "ChartSpec", - "description": "The specification of the chart." - } - }, - "id": "EmbeddedChart" - }, - "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": { - "format": { - "$ref": "TextFormat", - "description": "The format of this run. Absent values inherit the cell's format." - }, - "startIndex": { - "format": "int32", - "description": "The character index where this run starts.", - "type": "integer" - } - }, - "id": "TextFormatRun" - }, - "InsertRangeRequest": { - "properties": { - "shiftDimension": { - "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", - "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." - } - }, - "id": "InsertRangeRequest", - "description": "Inserts cells into a range, shifting the existing cells over or down.", - "type": "object" - }, - "AddNamedRangeResponse": { - "properties": { - "namedRange": { - "description": "The named range to add.", - "$ref": "NamedRange" - } - }, - "id": "AddNamedRangeResponse", - "description": "The result of adding a named range.", - "type": "object" - }, - "RowData": { - "description": "Data about each cell in a row.", - "type": "object", - "properties": { - "values": { - "description": "The values in the row, one per column.", - "items": { - "$ref": "CellData" - }, - "type": "array" - } - }, - "id": "RowData" - }, - "Border": { - "properties": { - "width": { - "format": "int32", - "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", - "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", - "description": "A border along a cell.", - "type": "object" - }, - "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.", - "items": { - "$ref": "RowData" - }, - "type": "array" - }, - "startRow": { - "format": "int32", - "description": "The first row this GridData refers to, zero-based.", - "type": "integer" - }, - "columnMetadata": { - "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.", - "items": { - "$ref": "DimensionProperties" - }, - "type": "array" - }, - "startColumn": { - "format": "int32", - "description": "The first column this GridData refers to, zero-based.", - "type": "integer" - }, - "rowMetadata": { - "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.", - "items": { - "$ref": "DimensionProperties" - }, - "type": "array" - } - }, - "id": "GridData", - "description": "Data in the grid, as well as metadata about the dimensions.", - "type": "object" - }, - "UpdateNamedRangeRequest": { - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "namedRange": { - "$ref": "NamedRange", - "description": "The named range to update with the new properties." - } - }, - "id": "UpdateNamedRangeRequest", - "description": "Updates properties of the named range with the specified\nnamedRangeId.", - "type": "object" - }, - "FindReplaceRequest": { - "properties": { - "sheetId": { - "format": "int32", - "description": "The sheet to find/replace over.", - "type": "integer" - }, - "allSheets": { - "description": "True to find/replace over all sheets.", - "type": "boolean" - }, - "matchCase": { - "description": "True if the search is case sensitive.", - "type": "boolean" - }, - "includeFormulas": { - "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.", - "type": "boolean" - }, - "matchEntireCell": { - "description": "True if the find value should match the entire cell.", - "type": "boolean" - }, - "find": { - "description": "The value to search.", - "type": "string" - }, - "searchByRegex": { - "description": "True if the find value is a regex.\nThe regular expression and replacement should follow Java regex rules\nat https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.\nThe replacement string is allowed to refer to capturing groups.\nFor example, if one cell has the contents `\"Google Sheets\"` and another\nhas `\"Google Docs\"`, then searching for `\"o.* (.*)\"` with a replacement of\n`\"$1 Rocks\"` would change the contents of the cells to\n`\"GSheets Rocks\"` and `\"GDocs Rocks\"` respectively.", - "type": "boolean" - }, - "replacement": { - "description": "The value to use as the replacement.", - "type": "string" - }, - "range": { - "$ref": "GridRange", - "description": "The range to find/replace over." - } - }, - "id": "FindReplaceRequest", - "description": "Finds and replaces data in cells over a range, sheet, or all sheets.", - "type": "object" - }, - "AddSheetRequest": { - "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties the new sheet should have.\nAll properties are optional.\nThe sheetId field is optional; if one is not\nset, an id will be randomly generated. (It is an error to specify the ID\nof a sheet that already exists.)" - } - }, - "id": "AddSheetRequest" - }, - "UpdateCellsRequest": { - "description": "Updates all cells in a range with new data.", - "type": "object", - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "rows": { - "description": "The data to write.", - "items": { - "$ref": "RowData" - }, - "type": "array" - }, - "start": { - "$ref": "GridCoordinate", - "description": "The coordinate to start writing data at.\nAny number of rows and columns (including a different number of\ncolumns per row) may be written." - }, - "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": { - "properties": { - "range": { - "$ref": "GridRange", - "description": "The range to randomize." - } - }, - "id": "RandomizeRangeRequest", - "description": "Randomizes the order of the rows in a range.", - "type": "object" - }, - "DeleteConditionalFormatRuleResponse": { - "properties": { - "rule": { - "description": "The rule that was deleted.", - "$ref": "ConditionalFormatRule" - } - }, - "id": "DeleteConditionalFormatRuleResponse", - "description": "The result of deleting a conditional format rule.", - "type": "object" - }, - "DeleteRangeRequest": { - "description": "Deletes a range of cells, shifting other cells into the deleted area.", - "type": "object", - "properties": { - "shiftDimension": { - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.", - "type": "string", - "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 of cells to delete." - } - }, - "id": "DeleteRangeRequest" - }, - "GridCoordinate": { - "description": "A coordinate in a sheet.\nAll indexes are zero-based.", - "type": "object", - "properties": { - "sheetId": { - "format": "int32", - "description": "The sheet this coordinate is on.", - "type": "integer" - }, - "columnIndex": { - "format": "int32", - "description": "The column index of the coordinate.", - "type": "integer" - }, - "rowIndex": { - "format": "int32", - "description": "The row index of the coordinate.", - "type": "integer" - } - }, - "id": "GridCoordinate" - }, - "UpdateSheetPropertiesRequest": { - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "properties": { - "description": "The properties to update.", - "$ref": "SheetProperties" - } - }, - "id": "UpdateSheetPropertiesRequest", - "description": "Updates properties of the sheet with the specified\nsheetId.", - "type": "object" - }, - "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" - }, - "GridProperties": { - "properties": { - "rowCount": { - "format": "int32", - "description": "The number of rows in the grid.", - "type": "integer" - }, - "hideGridlines": { - "description": "True if the grid isn't showing gridlines in the UI.", - "type": "boolean" - }, - "frozenRowCount": { - "format": "int32", - "description": "The number of rows that are frozen in the grid.", - "type": "integer" - }, - "frozenColumnCount": { - "format": "int32", - "description": "The number of columns that are frozen in the grid.", - "type": "integer" - }, - "columnCount": { - "format": "int32", - "description": "The number of columns in the grid.", - "type": "integer" - } - }, - "id": "GridProperties", - "description": "Properties of a grid.", - "type": "object" - }, - "Sheet": { - "description": "A sheet in a spreadsheet.", - "type": "object", - "properties": { - "protectedRanges": { - "description": "The protected ranges in this sheet.", - "items": { - "$ref": "ProtectedRange" - }, - "type": "array" - }, - "conditionalFormats": { - "description": "The conditional format rules in this sheet.", - "items": { - "$ref": "ConditionalFormatRule" - }, - "type": "array" - }, - "basicFilter": { - "description": "The filter on this sheet, if any.", - "$ref": "BasicFilter" - }, - "merges": { - "description": "The ranges that are merged together.", - "items": { - "$ref": "GridRange" - }, - "type": "array" - }, - "data": { - "description": "Data in the grid, if this is a grid sheet.\nThe number of GridData objects returned is dependent on the number of\nranges requested on this sheet. For example, if this is representing\n`Sheet1`, and the spreadsheet was requested with ranges\n`Sheet1!A1:C10` and `Sheet1!D15:E20`, then the first GridData will have a\nstartRow/startColumn of `0`,\nwhile the second one will have `startRow 14` (zero-based row 15),\nand `startColumn 3` (zero-based column D).", - "items": { - "$ref": "GridData" - }, - "type": "array" - }, - "bandedRanges": { - "description": "The banded (i.e. alternating colors) ranges on this sheet.", - "items": { - "$ref": "BandedRange" - }, - "type": "array" - }, - "properties": { - "description": "The properties of the sheet.", - "$ref": "SheetProperties" - }, - "charts": { - "description": "The specifications of every chart on this sheet.", - "items": { - "$ref": "EmbeddedChart" - }, - "type": "array" - }, - "filterViews": { - "description": "The filter views in this sheet.", - "items": { - "$ref": "FilterView" - }, - "type": "array" - } - }, - "id": "Sheet" - }, - "SortSpec": { - "description": "A sort order associated with a specific column or row.", - "type": "object", - "properties": { - "dimensionIndex": { - "format": "int32", - "description": "The dimension the sort should be applied to.", - "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": "SortSpec" - }, - "UpdateEmbeddedObjectPositionResponse": { - "properties": { - "position": { - "$ref": "EmbeddedObjectPosition", - "description": "The new position of the embedded object." - } - }, - "id": "UpdateEmbeddedObjectPositionResponse", - "description": "The result of updating an embedded object's position.", - "type": "object" - }, - "BooleanRule": { - "properties": { - "condition": { - "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied.", - "$ref": "BooleanCondition" - }, - "format": { - "$ref": "CellFormat", - "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color." - } - }, - "id": "BooleanRule", - "description": "A rule that may or may not match, depending on the condition.", - "type": "object" - }, - "FilterCriteria": { - "description": "Criteria for showing/hiding rows in a filter or filter view.", - "type": "object", - "properties": { - "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" - }, - "hiddenValues": { - "description": "Values that should be hidden.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "FilterCriteria" - }, - "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" - }, - "Editors": { - "properties": { - "users": { - "description": "The email addresses of users with edit access to the protected range.", - "items": { - "type": "string" - }, - "type": "array" - }, - "domainUsersCanEdit": { - "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain.", - "type": "boolean" - }, - "groups": { - "description": "The email addresses of groups with edit access to the protected range.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "Editors", - "description": "The editors of a protected range.", - "type": "object" - }, - "UpdateConditionalFormatRuleRequest": { - "properties": { - "index": { - "format": "int32", - "description": "The zero-based index of the rule that should be replaced or moved.", - "type": "integer" - }, - "sheetId": { - "format": "int32", - "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.", - "type": "integer" - }, - "newIndex": { - "format": "int32", - "description": "The zero-based new index the rule should end up at.", - "type": "integer" - }, - "rule": { - "$ref": "ConditionalFormatRule", - "description": "The rule that should replace the rule at the given index." - } - }, - "id": "UpdateConditionalFormatRuleRequest", - "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.", - "type": "object" - }, - "DataValidationRule": { - "properties": { - "condition": { - "$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" - }, - "strict": { - "description": "True if invalid data should be rejected.", - "type": "boolean" - }, - "inputMessage": { - "description": "A message to show the user when adding data to the cell.", - "type": "string" - } - }, - "id": "DataValidationRule", - "description": "A data validation rule.", - "type": "object" - }, - "BasicChartDomain": { - "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", - "type": "object", - "properties": { - "domain": { - "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates.", - "$ref": "ChartData" - }, - "reversed": { - "description": "True to reverse the order of the domain values (horizontal axis).", - "type": "boolean" - } - }, - "id": "BasicChartDomain" - }, - "PasteDataRequest": { - "description": "Inserts data into the spreadsheet starting at the specified coordinate.", - "type": "object", - "properties": { - "delimiter": { - "description": "The delimiter in the data.", - "type": "string" - }, - "data": { - "description": "The data to insert.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "Paste values, formulas, formats, and merges.", - "Paste the values ONLY without formats, formulas, or merges.", - "Paste the format and data validation only.", - "Like PASTE_NORMAL but without borders.", - "Paste the formulas only.", - "Paste the data validation only.", - "Paste the conditional formatting rules only." - ], - "enum": [ - "PASTE_NORMAL", - "PASTE_VALUES", - "PASTE_FORMAT", - "PASTE_NO_BORDERS", - "PASTE_FORMULA", - "PASTE_DATA_VALIDATION", - "PASTE_CONDITIONAL_FORMATTING" - ], - "description": "How the data should be pasted.", - "type": "string" - }, - "html": { - "description": "True if the data is HTML.", - "type": "boolean" - }, - "coordinate": { - "$ref": "GridCoordinate", - "description": "The coordinate at which the data should start being inserted." - } - }, - "id": "PasteDataRequest" - }, - "AppendDimensionRequest": { - "description": "Appends rows or columns to the end of a sheet.", - "type": "object", - "properties": { - "dimension": { - "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." - ] - }, - "length": { - "format": "int32", - "description": "The number of rows or columns to append.", - "type": "integer" - }, - "sheetId": { - "format": "int32", - "description": "The sheet to append rows or columns to.", - "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" - } - }, - "id": "AddNamedRangeRequest" - }, - "UpdateEmbeddedObjectPositionRequest": { - "properties": { - "newPosition": { - "$ref": "EmbeddedObjectPosition", - "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you." - }, - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "objectId": { - "format": "int32", - "description": "The ID of the object to moved.", - "type": "integer" - } - }, - "id": "UpdateEmbeddedObjectPositionRequest", - "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", - "type": "object" - }, - "TextRotation": { - "description": "The rotation applied to text in a cell.", - "type": "object", - "properties": { - "vertical": { - "description": "If true, text reads top to bottom, but the orientation of individual\ncharacters is unchanged.\nFor example:\n\n | V |\n | e |\n | r |\n | t |\n | i |\n | c |\n | a |\n | l |", - "type": "boolean" - }, - "angle": { - "format": "int32", - "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", - "type": "integer" - } - }, - "id": "TextRotation" - }, - "PieChartSpec": { - "properties": { - "threeDimensional": { - "description": "True if the pie is three dimensional.", - "type": "boolean" - }, - "domain": { - "$ref": "ChartData", - "description": "The data that covers the domain of the pie chart." - }, - "series": { - "description": "The data that covers the one and only series of the pie chart.", - "$ref": "ChartData" - }, - "pieHole": { - "format": "double", - "description": "The size of the hole in the pie chart.", - "type": "number" - }, - "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.", - "Each pie slice has a label attached to it." - ], - "enum": [ - "PIE_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "LABELED_LEGEND" - ], - "description": "Where the legend of the pie chart should be drawn.", - "type": "string" - } - }, - "id": "PieChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.", - "type": "object" - }, - "UpdateFilterViewRequest": { - "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, - "filter": { - "$ref": "FilterView", - "description": "The new properties of the filter view." - } - }, - "id": "UpdateFilterViewRequest", - "description": "Updates properties of the filter view.", - "type": "object" - }, - "ConditionalFormatRule": { - "properties": { - "ranges": { - "description": "The ranges that will be formatted if the condition is true.\nAll the ranges must be on the same grid.", - "items": { - "$ref": "GridRange" - }, - "type": "array" - }, - "gradientRule": { - "$ref": "GradientRule", - "description": "The formatting will vary based on the gradients in the rule." - }, - "booleanRule": { - "description": "The formatting is either \"on\" or \"off\" according to the rule.", - "$ref": "BooleanRule" - } - }, - "id": "ConditionalFormatRule", - "description": "A rule describing a conditional format.", - "type": "object" - }, - "CopyPasteRequest": { - "properties": { - "destination": { - "description": "The location to paste to. If the range covers a span that's\na multiple of the source's height or width, then the\ndata will be repeated to fill in the destination range.\nIf the range is smaller than the source range, the entire\nsource data will still be copied (beyond the end of the destination range).", - "$ref": "GridRange" - }, - "pasteOrientation": { - "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" - }, - "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" - }, - "source": { - "$ref": "GridRange", - "description": "The source range to copy." - } - }, - "id": "CopyPasteRequest", - "description": "Copies data from the source to the destination.", - "type": "object" - }, - "BooleanCondition": { - "properties": { - "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.", - "items": { - "$ref": "ConditionValue" - }, - "type": "array" - }, - "type": { - "enumDescriptions": [ - "The default value, do not use.", - "The cell's value must be greater than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be greater than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be less than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be less than or equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be not equal to the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", - "The cell's value must not be between the two condition values.\nSupported by data validation, conditional formatting and filters.\nRequires exactly two ConditionValues.", - "The cell's value must contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must not contain the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must start with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must end with the condition's value.\nSupported by conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be exactly the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be a valid email address.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be a valid URL.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be the same date as the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.", - "The cell's value must be before the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be after the date of the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be on or before the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be on or after the date of the condition's value.\nSupported by data validation.\nRequires a single ConditionValue\nthat may be a relative date.", - "The cell's value must be between the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", - "The cell's value must be outside the dates of the two condition values.\nSupported by data validation.\nRequires exactly two ConditionValues.", - "The cell's value must be a date.\nSupported by data validation.\nRequires no ConditionValues.", - "The cell's value must be listed in the grid in condition value's range.\nSupported by data validation.\nRequires a single ConditionValue,\nand the value must be a valid range in A1 notation.", - "The cell's value must in the list of condition values.\nSupported by data validation.\nSupports any number of condition values,\none per item in the list.\nFormulas are not supported in the values.", - "The cell's value must be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", - "The cell's value must not be empty.\nSupported by conditional formatting and filters.\nRequires no ConditionValues.", - "The condition's formula must evaluate to true.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue." - ], - "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" - ], - "description": "The type of condition.", - "type": "string" - } - }, - "id": "BooleanCondition", - "description": "A condition that can evaluate to true or false.\nBooleanConditions are used by conditional formatting,\ndata validation, and the criteria in filters.", - "type": "object" - }, - "Request": { - "properties": { - "updateBorders": { - "$ref": "UpdateBordersRequest", - "description": "Updates the borders in a range of cells." - }, - "setDataValidation": { - "$ref": "SetDataValidationRequest", - "description": "Sets data validation for one or more cells." - }, - "deleteConditionalFormatRule": { - "description": "Deletes an existing conditional format rule.", - "$ref": "DeleteConditionalFormatRuleRequest" - }, - "repeatCell": { - "description": "Repeats a single cell across a range.", - "$ref": "RepeatCellRequest" - }, - "clearBasicFilter": { - "$ref": "ClearBasicFilterRequest", - "description": "Clears the basic filter on a sheet." - }, - "appendDimension": { - "description": "Appends dimensions to the end of a sheet.", - "$ref": "AppendDimensionRequest" - }, - "updateConditionalFormatRule": { - "description": "Updates an existing conditional format rule.", - "$ref": "UpdateConditionalFormatRuleRequest" - }, - "insertRange": { - "$ref": "InsertRangeRequest", - "description": "Inserts new cells in a sheet, shifting the existing cells." - }, - "moveDimension": { - "$ref": "MoveDimensionRequest", - "description": "Moves rows or columns to another location in a sheet." - }, - "randomizeRange": { - "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": { - "$ref": "UnmergeCellsRequest", - "description": "Unmerges merged cells." - }, - "updateEmbeddedObjectPosition": { - "description": "Updates an embedded object's (e.g. chart, image) position.", - "$ref": "UpdateEmbeddedObjectPositionRequest" - }, - "updateDimensionProperties": { - "description": "Updates dimensions' properties.", - "$ref": "UpdateDimensionPropertiesRequest" - }, - "pasteData": { - "description": "Pastes data (HTML or delimited) into a sheet.", - "$ref": "PasteDataRequest" - }, - "setBasicFilter": { - "description": "Sets the basic filter on a sheet.", - "$ref": "SetBasicFilterRequest" - }, - "addConditionalFormatRule": { - "$ref": "AddConditionalFormatRuleRequest", - "description": "Adds a new conditional format rule." - }, - "updateCells": { - "$ref": "UpdateCellsRequest", - "description": "Updates many cells at once." - }, - "addNamedRange": { - "$ref": "AddNamedRangeRequest", - "description": "Adds a named range." - }, - "updateSpreadsheetProperties": { - "description": "Updates the spreadsheet's properties.", - "$ref": "UpdateSpreadsheetPropertiesRequest" - }, - "deleteEmbeddedObject": { - "description": "Deletes an embedded object (e.g, chart, image) in a sheet.", - "$ref": "DeleteEmbeddedObjectRequest" - }, - "updateFilterView": { - "description": "Updates the properties of a filter view.", - "$ref": "UpdateFilterViewRequest" - }, - "addBanding": { - "description": "Adds a new banded range", - "$ref": "AddBandingRequest" - }, - "autoResizeDimensions": { - "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", - "$ref": "AutoResizeDimensionsRequest" - }, - "appendCells": { - "description": "Appends cells after the last row with data in a sheet.", - "$ref": "AppendCellsRequest" - }, - "cutPaste": { - "description": "Cuts data from one area and pastes it to another.", - "$ref": "CutPasteRequest" - }, - "mergeCells": { - "$ref": "MergeCellsRequest", - "description": "Merges cells together." - }, - "updateNamedRange": { - "$ref": "UpdateNamedRangeRequest", - "description": "Updates a named range." - }, - "updateSheetProperties": { - "$ref": "UpdateSheetPropertiesRequest", - "description": "Updates a sheet's properties." - }, - "autoFill": { - "$ref": "AutoFillRequest", - "description": "Automatically fills in more data based on existing data." - }, - "deleteDimension": { - "description": "Deletes rows or columns in a sheet.", - "$ref": "DeleteDimensionRequest" - }, - "sortRange": { - "description": "Sorts data in a range.", - "$ref": "SortRangeRequest" - }, - "deleteProtectedRange": { - "$ref": "DeleteProtectedRangeRequest", - "description": "Deletes a protected range." - }, - "duplicateFilterView": { - "$ref": "DuplicateFilterViewRequest", - "description": "Duplicates a filter view." - }, - "addChart": { - "$ref": "AddChartRequest", - "description": "Adds a chart." - }, - "findReplace": { - "description": "Finds and replaces occurrences of some text with other text.", - "$ref": "FindReplaceRequest" - }, - "updateChartSpec": { - "description": "Updates a chart's specifications.", - "$ref": "UpdateChartSpecRequest" - }, - "textToColumns": { - "$ref": "TextToColumnsRequest", - "description": "Converts a column of text into many columns of text." - }, - "updateProtectedRange": { - "description": "Updates a protected range.", - "$ref": "UpdateProtectedRangeRequest" - }, - "addSheet": { - "description": "Adds a sheet.", - "$ref": "AddSheetRequest" - }, - "copyPaste": { - "description": "Copies data from one area and pastes it to another.", - "$ref": "CopyPasteRequest" - }, - "deleteFilterView": { - "description": "Deletes a filter view from a sheet.", - "$ref": "DeleteFilterViewRequest" - }, - "insertDimension": { - "$ref": "InsertDimensionRequest", - "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." - }, - "deleteBanding": { - "description": "Removes a banded range", - "$ref": "DeleteBandingRequest" - }, - "addFilterView": { - "$ref": "AddFilterViewRequest", - "description": "Adds a filter view." - } - }, - "id": "Request", - "description": "A single kind of update to apply to a spreadsheet.", - "type": "object" - }, - "GridRange": { - "description": "A range on a sheet.\nAll indexes are zero-based.\nIndexes are half open, e.g the start index is inclusive\nand the end index is exclusive -- [start_index, end_index).\nMissing indexes indicate the range is unbounded on that side.\n\nFor example, if `\"Sheet1\"` is sheet ID 0, then:\n\n `Sheet1!A1:A1 == sheet_id: 0,\n start_row_index: 0, end_row_index: 1,\n start_column_index: 0, end_column_index: 1`\n\n `Sheet1!A3:B4 == sheet_id: 0,\n start_row_index: 2, end_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A:B == sheet_id: 0,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A5:B == sheet_id: 0,\n start_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1 == sheet_id:0`\n\nThe start index must always be less than or equal to the end index.\nIf the start index equals the end index, then the range is empty.\nEmpty ranges are typically not meaningful and are usually rendered in the\nUI as `#REF!`.", - "type": "object", - "properties": { - "startColumnIndex": { - "format": "int32", - "description": "The start column (inclusive) of the range, or not set if unbounded.", - "type": "integer" - }, - "sheetId": { - "format": "int32", - "description": "The sheet this range is on.", - "type": "integer" - }, - "endColumnIndex": { - "format": "int32", - "description": "The end column (exclusive) of the range, or not set if unbounded.", - "type": "integer" - }, - "endRowIndex": { - "format": "int32", - "description": "The end row (exclusive) of the range, or not set if unbounded.", - "type": "integer" - }, - "startRowIndex": { - "format": "int32", - "description": "The start row (inclusive) of the range, or not set if unbounded.", - "type": "integer" - } - }, - "id": "GridRange" - }, - "BasicChartSpec": { - "description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.", - "type": "object", - "properties": { - "headerCount": { - "format": "int32", - "description": "The number of rows or columns in the data that are \"headers\".\nIf not set, Google Sheets will guess how many rows are headers based\non the data.\n\n(Note that BasicChartAxis.title may override the axis title\n inferred from the header values.)", - "type": "integer" - }, - "stackedType": { - "enumDescriptions": [ - "Default value, do not use.", - "Series are not stacked.", - "Series values are stacked, each value is rendered vertically beginning\nfrom the top of the value below it.", - "Vertical stacks are stretched to reach the top of the chart, with\nvalues laid out as percentages of each other." - ], - "enum": [ - "BASIC_CHART_STACKED_TYPE_UNSPECIFIED", - "NOT_STACKED", - "STACKED", - "PERCENT_STACKED" - ], - "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, and Stepped Area charts.", - "type": "string" - }, - "threeDimensional": { - "description": "True to make the chart 3D.\nApplies to Bar and Column charts.", - "type": "boolean" - }, - "axis": { - "description": "The axis on the chart.", - "items": { - "$ref": "BasicChartAxis" - }, - "type": "array" - }, - "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", - "LINE", - "AREA", - "COLUMN", - "SCATTER", - "COMBO", - "STEPPED_AREA" - ], - "description": "The type of the chart.", - "type": "string" - }, - "series": { - "description": "The data this chart is visualizing.", - "items": { - "$ref": "BasicChartSeries" - }, - "type": "array" - }, - "legendPosition": { - "enumDescriptions": [ - "Default value, do not use.", - "The legend is rendered on the bottom of the chart.", - "The legend is rendered on the left of the chart.", - "The legend is rendered on the right of the chart.", - "The legend is rendered on the top of the chart.", - "No legend is rendered." - ], - "enum": [ - "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND" - ], - "description": "The position of the chart legend.", - "type": "string" - }, - "domains": { - "description": "The domain of data this is charting.\nOnly a single domain is supported.", - "items": { - "$ref": "BasicChartDomain" - }, - "type": "array" - }, - "lineSmoothing": { - "description": "Gets whether all lines should be rendered smooth or straight by default.\nApplies to Line charts.", - "type": "boolean" - } - }, - "id": "BasicChartSpec" - }, - "SetDataValidationRequest": { - "description": "Sets a data validation rule to every cell in the range.\nTo clear validation in a range, call this with no rule specified.", - "type": "object", - "properties": { - "rule": { - "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range.", - "$ref": "DataValidationRule" - }, - "range": { - "$ref": "GridRange", - "description": "The range the data validation rule should apply to." - } - }, - "id": "SetDataValidationRequest" - }, - "BubbleChartSpec": { - "properties": { - "bubbleMaxRadiusSize": { - "format": "int32", - "description": "The max radius size of the bubbles, in pixels.\nIf specified, the field must be a positive value.", - "type": "integer" - }, - "series": { - "$ref": "ChartData", - "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically." - }, - "legendPosition": { - "enum": [ - "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "INSIDE_LEGEND" - ], - "description": "Where the legend of the 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.", - "The legend is rendered inside the chart area." - ] - }, - "domain": { - "$ref": "ChartData", - "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally." - }, - "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" - }, - "bubbleOpacity": { - "format": "float", - "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.", - "type": "number" - }, - "bubbleBorderColor": { - "$ref": "Color", - "description": "The bubble border color." - }, - "bubbleTextStyle": { - "$ref": "TextFormat", - "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported." - }, - "groupIds": { - "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional.", - "$ref": "ChartData" - }, - "bubbleLabels": { - "description": "The data containing the bubble labels. These do not need to be unique.", - "$ref": "ChartData" - }, - "bubbleMinRadiusSize": { - "format": "int32", - "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.", - "type": "integer" - } - }, - "id": "BubbleChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.", - "type": "object" - }, - "CellData": { - "properties": { - "userEnteredFormat": { - "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" - }, - "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." - }, - "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.", - "items": { - "$ref": "TextFormatRun" - }, - "type": "array" - }, - "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" - }, - "pivotTable": { - "$ref": "PivotTable", - "description": "A pivot table anchored at this cell. The size of pivot table itself\nis computed dynamically based on its data, grouping, filters, values,\netc. Only the top-left cell of the pivot table contains the pivot table\ndefinition. The other cells will contain the calculated values of the\nresults of the pivot in their effective_value fields." - } - }, - "id": "CellData", - "description": "Data about a specific cell.", - "type": "object" - }, - "BatchUpdateSpreadsheetRequest": { - "description": "The request for updating any aspect of a spreadsheet.", - "type": "object", - "properties": { - "responseIncludeGridData": { - "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.", - "type": "boolean" - }, - "responseRanges": { - "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'.", - "items": { - "type": "string" - }, - "type": "array" - }, - "includeSpreadsheetInResponse": { - "description": "Determines if the update response should include the spreadsheet\nresource.", - "type": "boolean" - }, - "requests": { - "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.", - "items": { - "$ref": "Request" - }, - "type": "array" - } - }, - "id": "BatchUpdateSpreadsheetRequest" - }, - "BasicChartAxis": { - "properties": { - "title": { - "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.", - "type": "string" - }, - "position": { - "enum": [ - "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", - "BOTTOM_AXIS", - "LEFT_AXIS", - "RIGHT_AXIS" - ], - "description": "The position of this axis.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", - "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", - "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." - ] - }, - "format": { - "description": "The format of the title.\nOnly valid if the axis is not associated with the domain.", - "$ref": "TextFormat" - } - }, - "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": { - "bottom": { - "format": "int32", - "description": "The bottom padding of the cell.", - "type": "integer" - }, - "top": { - "format": "int32", - "description": "The top padding of the cell.", - "type": "integer" - }, - "left": { - "format": "int32", - "description": "The left padding of the cell.", - "type": "integer" - }, - "right": { - "format": "int32", - "description": "The right padding of the cell.", - "type": "integer" - } - }, - "id": "Padding" - }, - "DeleteDimensionRequest": { - "description": "Deletes the dimensions from the sheet.", - "type": "object", - "properties": { - "range": { - "description": "The dimensions to delete from the sheet.", - "$ref": "DimensionRange" - } - }, - "id": "DeleteDimensionRequest" - }, - "UpdateChartSpecRequest": { - "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)", - "type": "object", - "properties": { - "chartId": { - "format": "int32", - "description": "The ID of the chart to update.", - "type": "integer" - }, - "spec": { - "description": "The specification to apply to the chart.", - "$ref": "ChartSpec" - } - }, - "id": "UpdateChartSpecRequest" - }, - "DeleteFilterViewRequest": { - "description": "Deletes a particular filter view.", - "type": "object", - "properties": { - "filterId": { - "format": "int32", - "description": "The ID of the filter to delete.", - "type": "integer" - } - }, - "id": "DeleteFilterViewRequest" - }, - "BatchUpdateValuesResponse": { - "properties": { - "responses": { - "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.", - "items": { - "$ref": "UpdateValuesResponse" - }, - "type": "array" - }, - "totalUpdatedSheets": { - "format": "int32", - "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", - "type": "integer" - }, - "totalUpdatedCells": { - "format": "int32", - "description": "The total number of cells updated.", - "type": "integer" - }, - "totalUpdatedColumns": { - "format": "int32", - "description": "The total number of columns where at least one cell in the column was\nupdated.", - "type": "integer" - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "totalUpdatedRows": { - "format": "int32", - "description": "The total number of rows where at least one cell in the row was updated.", - "type": "integer" - } - }, - "id": "BatchUpdateValuesResponse", - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object" - }, - "SortRangeRequest": { - "properties": { - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "items": { - "$ref": "SortSpec" - }, - "type": "array" - }, - "range": { - "description": "The range to sort.", - "$ref": "GridRange" - } - }, - "id": "SortRangeRequest", - "description": "Sorts data in rows based on a sort order per column.", - "type": "object" - }, - "MergeCellsRequest": { - "properties": { - "range": { - "description": "The range of cells to merge.", - "$ref": "GridRange" - }, - "mergeType": { - "enum": [ - "MERGE_ALL", - "MERGE_COLUMNS", - "MERGE_ROWS" - ], - "description": "How the cells should be merged.", - "type": "string", - "enumDescriptions": [ - "Create a single merge from the range", - "Create a merge for each column in the range", - "Create a merge for each row in the range" - ] - } - }, - "id": "MergeCellsRequest", - "description": "Merges all cells in the range.", - "type": "object" - }, - "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.)" - } - }, - "id": "AddProtectedRangeRequest" - }, - "BatchClearValuesRequest": { - "properties": { - "ranges": { - "description": "The ranges to clear, in A1 notation.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "BatchClearValuesRequest", - "description": "The request for clearing more than one range of values in a spreadsheet.", - "type": "object" - }, - "DuplicateFilterViewResponse": { - "properties": { - "filter": { - "description": "The newly created filter.", - "$ref": "FilterView" - } - }, - "id": "DuplicateFilterViewResponse", - "description": "The result of a filter view being duplicated.", - "type": "object" - }, - "DuplicateSheetResponse": { - "description": "The result of duplicating a sheet.", - "type": "object", - "properties": { - "properties": { - "$ref": "SheetProperties", - "description": "The properties of the duplicate sheet." - } - }, - "id": "DuplicateSheetResponse" - }, - "TextToColumnsRequest": { - "properties": { - "delimiter": { - "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.", - "type": "string" - }, - "delimiterType": { - "enumDescriptions": [ - "Default value. This value must not be used.", - "\",\"", - "\";\"", - "\".\"", - "\" \"", - "A custom value as defined in delimiter." - ], - "enum": [ - "DELIMITER_TYPE_UNSPECIFIED", - "COMMA", - "SEMICOLON", - "PERIOD", - "SPACE", - "CUSTOM" - ], - "description": "The delimiter type to use.", - "type": "string" - }, - "source": { - "description": "The source data range. This must span exactly one column.", - "$ref": "GridRange" - } - }, - "id": "TextToColumnsRequest", - "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.", - "type": "object" - }, - "ClearBasicFilterRequest": { - "properties": { - "sheetId": { - "format": "int32", - "description": "The sheet ID on which the basic filter should be cleared.", - "type": "integer" - } - }, - "id": "ClearBasicFilterRequest", - "description": "Clears the basic filter, if any exists on the sheet.", - "type": "object" - }, - "BatchUpdateSpreadsheetResponse": { - "properties": { - "updatedSpreadsheet": { - "$ref": "Spreadsheet", - "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`." - }, - "replies": { - "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", - "items": { - "$ref": "Response" - }, - "type": "array" - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - } - }, - "id": "BatchUpdateSpreadsheetResponse", - "description": "The reply for batch updating a spreadsheet.", - "type": "object" - }, - "DeleteBandingRequest": { - "description": "Removes the banded range with the given ID from the spreadsheet.", - "type": "object", - "properties": { - "bandedRangeId": { - "format": "int32", - "description": "The ID of the banded range to delete.", - "type": "integer" - } - }, - "id": "DeleteBandingRequest" - }, - "AppendValuesResponse": { - "properties": { - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" - }, - "updates": { - "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.", - "type": "string" - } - }, - "id": "AppendValuesResponse", - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object" - }, - "MoveDimensionRequest": { - "properties": { - "destinationIndex": { - "format": "int32", - "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`.", - "type": "integer" - }, - "source": { - "description": "The source dimensions to move.", - "$ref": "DimensionRange" - } - }, - "id": "MoveDimensionRequest", - "description": "Moves one or more rows or columns.", - "type": "object" - }, - "PivotFilterCriteria": { - "properties": { - "visibleValues": { - "description": "Values that should be included. Values not listed here are excluded.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "PivotFilterCriteria", - "description": "Criteria for showing/hiding rows in a pivot table.", - "type": "object" - }, - "AddFilterViewRequest": { - "description": "Adds a filter view.", - "type": "object", - "properties": { - "filter": { - "$ref": "FilterView", - "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)" - } - }, - "id": "AddFilterViewRequest" - }, - "AddConditionalFormatRuleRequest": { - "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.", - "type": "object", - "properties": { - "index": { - "format": "int32", - "description": "The zero-based index where the rule should be inserted.", - "type": "integer" - }, - "rule": { - "description": "The rule to add.", - "$ref": "ConditionalFormatRule" - } - }, - "id": "AddConditionalFormatRuleRequest" - }, - "ChartSpec": { - "properties": { - "candlestickChart": { - "$ref": "CandlestickChartSpec", - "description": "A candlestick chart specification." - }, - "bubbleChart": { - "description": "A bubble chart specification.", - "$ref": "BubbleChartSpec" - }, - "fontName": { - "description": "The name of the font to use by default for all chart text (e.g. title,\naxis labels, legend). If a font is specified for a specific part of the\nchart it will override this font name.", - "type": "string" - }, - "maximized": { - "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)", - "type": "boolean" - }, - "hiddenDimensionStrategy": { - "enumDescriptions": [ - "Default value, do not use.", - "Charts will skip hidden rows and columns.", - "Charts will skip hidden rows only.", - "Charts will skip hidden columns only.", - "Charts will not skip any hidden rows or columns." - ], - "enum": [ - "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED", - "SKIP_HIDDEN_ROWS_AND_COLUMNS", - "SKIP_HIDDEN_ROWS", - "SKIP_HIDDEN_COLUMNS", - "SHOW_ALL" - ], - "description": "Determines how the charts will use hidden rows or columns.", - "type": "string" - }, - "backgroundColor": { - "$ref": "Color", - "description": "The background color of the entire chart.\nNot applicable to Org charts." - }, - "basicChart": { - "$ref": "BasicChartSpec", - "description": "A basic chart specification, can be one of many kinds of charts.\nSee BasicChartType for the list of all\ncharts this supports." - }, - "orgChart": { - "description": "An org chart specification.", - "$ref": "OrgChartSpec" - }, - "pieChart": { - "$ref": "PieChartSpec", - "description": "A pie chart specification." - }, - "titleTextFormat": { - "description": "The title text format.\nStrikethrough and underline are not supported.", - "$ref": "TextFormat" - }, - "title": { - "description": "The title of the chart.", - "type": "string" - }, - "histogramChart": { - "description": "A histogram chart specification.", - "$ref": "HistogramChartSpec" - } - }, - "id": "ChartSpec", - "description": "The specifications of a chart.", - "type": "object" - }, - "NumberFormat": { - "properties": { - "type": { - "enumDescriptions": [ - "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.", - "Text formatting, e.g `1000.12`", - "Number formatting, e.g, `1,000.12`", - "Percent formatting, e.g `10.12%`", - "Currency formatting, e.g `$1,000.12`", - "Date formatting, e.g `9/26/2008`", - "Time formatting, e.g `3:59:00 PM`", - "Date+Time formatting, e.g `9/26/08 15:59:00`", - "Scientific number formatting, e.g `1.01E+03`" - ], - "enum": [ - "NUMBER_FORMAT_TYPE_UNSPECIFIED", - "TEXT", - "NUMBER", - "PERCENT", - "CURRENCY", - "DATE", - "TIME", - "DATE_TIME", - "SCIENTIFIC" - ], - "description": "The type of the number format.\nWhen writing, this field must be set.", - "type": "string" - }, - "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" - } - }, - "id": "NumberFormat", - "description": "The number format of a cell.", - "type": "object" - }, - "CandlestickDomain": { - "description": "The domain of a CandlestickChart.", - "type": "object", - "properties": { - "data": { - "description": "The data of the CandlestickDomain.", - "$ref": "ChartData" - }, - "reversed": { - "description": "True to reverse the order of the domain values (horizontal axis).", - "type": "boolean" - } - }, - "id": "CandlestickDomain" - }, - "SheetProperties": { - "description": "Properties of a sheet.", - "type": "object", - "properties": { - "title": { - "description": "The name of the sheet.", - "type": "string" - }, - "tabColor": { - "description": "The color of the tab in the UI.", - "$ref": "Color" - }, - "index": { - "format": "int32", - "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1.", - "type": "integer" - }, - "sheetId": { - "format": "int32", - "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.", - "type": "integer" - }, - "rightToLeft": { - "description": "True if the sheet is an RTL sheet instead of an LTR sheet.", - "type": "boolean" - }, - "hidden": { - "description": "True if the sheet is hidden in the UI, false if it's visible.", - "type": "boolean" - }, - "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" - } - }, - "id": "SheetProperties" - }, - "UpdateDimensionPropertiesRequest": { - "description": "Updates properties of dimensions within the specified range.", - "type": "object", - "properties": { - "properties": { - "description": "Properties to update.", - "$ref": "DimensionProperties" - }, - "range": { - "$ref": "DimensionRange", - "description": "The rows or columns to update." - }, - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - } - }, - "id": "UpdateDimensionPropertiesRequest" - }, - "SourceAndDestination": { - "properties": { - "fillLength": { - "format": "int32", - "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.", - "type": "integer" - }, - "source": { - "description": "The location of the data to use as the source of the autofill.", - "$ref": "GridRange" - }, - "dimension": { - "enumDescriptions": [ - "The default value, do not use.", - "Operates on the rows of a sheet.", - "Operates on the columns of a sheet." - ], - "enum": [ - "DIMENSION_UNSPECIFIED", - "ROWS", - "COLUMNS" - ], - "description": "The dimension that data should be filled into.", - "type": "string" - } - }, - "id": "SourceAndDestination", - "description": "A combination of a source range and how to extend that source.", - "type": "object" - }, - "OrgChartSpec": { - "description": "An \u003ca href=\"/chart/interactive/docs/gallery/orgchart\"\u003eorg chart\u003c/a\u003e.\nOrg charts require a unique set of labels in labels and may\noptionally include parent_labels and tooltips.\nparent_labels contain, for each node, the label identifying the parent\nnode. tooltips contain, for each node, an optional tooltip.\n\nFor example, to describe an OrgChart with Alice as the CEO, Bob as the\nPresident (reporting to Alice) and Cathy as VP of Sales (also reporting to\nAlice), have labels contain \"Alice\", \"Bob\", \"Cathy\",\nparent_labels contain \"\", \"Alice\", \"Alice\" and tooltips contain\n\"CEO\", \"President\", \"VP Sales\".", - "type": "object", - "properties": { - "tooltips": { - "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.", - "$ref": "ChartData" - }, - "selectedNodeColor": { - "$ref": "Color", - "description": "The color of the selected org chart nodes." - }, - "parentLabels": { - "$ref": "ChartData", - "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional." - }, - "labels": { - "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique.", - "$ref": "ChartData" - }, - "nodeSize": { - "enumDescriptions": [ - "Default value, do not use.", - "The small org chart node size.", - "The medium org chart node size.", - "The large org chart node size." - ], - "enum": [ - "ORG_CHART_LABEL_SIZE_UNSPECIFIED", - "SMALL", - "MEDIUM", - "LARGE" - ], - "description": "The size of the org chart nodes.", - "type": "string" - }, - "nodeColor": { - "description": "The color of the org chart nodes.", - "$ref": "Color" - } - }, - "id": "OrgChartSpec" - }, - "FilterView": { - "description": "A filter view.", - "type": "object", - "properties": { - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "items": { - "$ref": "SortSpec" - }, - "type": "array" - }, - "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": { - "format": "int32", - "description": "The ID of the filter view.", - "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" - }, - "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" - } - }, - "id": "FilterView" - }, - "BandingProperties": { - "properties": { - "secondBandColor": { - "$ref": "Color", - "description": "The second color that is alternating. (Required)" - }, - "footerColor": { - "$ref": "Color", - "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn." - }, - "headerColor": { - "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would.", - "$ref": "Color" - }, - "firstBandColor": { - "$ref": "Color", - "description": "The first 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" - }, - "CandlestickSeries": { - "description": "The series of a CandlestickData.", - "type": "object", - "properties": { - "data": { - "$ref": "ChartData", - "description": "The data of the CandlestickSeries." - } - }, - "id": "CandlestickSeries" - }, - "BasicFilter": { - "properties": { - "criteria": { - "additionalProperties": { - "$ref": "FilterCriteria" - }, - "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", - "type": "object" - }, - "range": { - "description": "The range the filter covers.", - "$ref": "GridRange" - }, - "sortSpecs": { - "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", - "items": { - "$ref": "SortSpec" - }, - "type": "array" - } - }, - "id": "BasicFilter", - "description": "The default filter associated with a sheet.", - "type": "object" - }, - "AddProtectedRangeResponse": { - "properties": { - "protectedRange": { - "description": "The newly added protected range.", - "$ref": "ProtectedRange" - } - }, - "id": "AddProtectedRangeResponse", - "description": "The result of adding a new protected range.", - "type": "object" - }, - "HistogramChartSpec": { - "properties": { - "legendPosition": { - "enum": [ - "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED", - "BOTTOM_LEGEND", - "LEFT_LEGEND", - "RIGHT_LEGEND", - "TOP_LEGEND", - "NO_LEGEND", - "INSIDE_LEGEND" - ], - "description": "The position of the chart legend.", - "type": "string", - "enumDescriptions": [ - "Default value, do not use.", - "The legend is rendered on the bottom of the chart.", - "The legend is rendered on the left of the chart.", - "The legend is rendered on the right of the chart.", - "The legend is rendered on the top of the chart.", - "No legend is rendered.", - "The legend is rendered inside the chart area." - ] - }, - "bucketSize": { - "format": "double", - "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.", - "type": "number" - }, - "outlierPercentile": { - "format": "double", - "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.", - "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.", - "items": { - "$ref": "HistogramSeries" - }, - "type": "array" - } - }, - "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": { - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", - "properties": { - "updatedData": { - "$ref": "ValueRange", - "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`." - }, - "updatedRows": { - "format": "int32", - "description": "The number of rows where at least one cell in the row was updated.", - "type": "integer" - }, - "updatedColumns": { - "format": "int32", - "description": "The number of columns where at least one cell in the column was updated.", - "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" - }, - "updatedCells": { - "format": "int32", - "description": "The number of cells updated.", - "type": "integer" - } - }, - "id": "UpdateValuesResponse" - }, - "ErrorValue": { - "properties": { - "type": { - "enum": [ - "ERROR_TYPE_UNSPECIFIED", - "ERROR", - "NULL_VALUE", - "DIVIDE_BY_ZERO", - "VALUE", - "REF", - "NAME", - "NUM", - "N_A", - "LOADING" - ], - "description": "The type of error.", - "type": "string", - "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." - ] - }, - "message": { - "description": "A message with more information about the error\n(in the spreadsheet's locale).", - "type": "string" - } - }, - "id": "ErrorValue", - "description": "An error in a cell.", - "type": "object" - }, - "PivotValue": { - "properties": { - "sourceColumnOffset": { - "format": "int32", - "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`.", - "type": "integer" - }, - "name": { - "description": "A name to use for the value. This is only used if formula was set.\nOtherwise, the column name is used.", - "type": "string" - }, - "formula": { - "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.", - "type": "string" - }, - "summarizeFunction": { - "enumDescriptions": [ - "The default, do not use.", - "Corresponds to the `SUM` function.", - "Corresponds to the `COUNTA` function.", - "Corresponds to the `COUNT` function.", - "Corresponds to the `COUNTUNIQUE` function.", - "Corresponds to the `AVERAGE` function.", - "Corresponds to the `MAX` function.", - "Corresponds to the `MIN` function.", - "Corresponds to the `MEDIAN` function.", - "Corresponds to the `PRODUCT` function.", - "Corresponds to the `STDEV` function.", - "Corresponds to the `STDEVP` function.", - "Corresponds to the `VAR` function.", - "Corresponds to the `VARP` function.", - "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set." - ], - "enum": [ - "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED", - "SUM", - "COUNTA", - "COUNT", - "COUNTUNIQUE", - "AVERAGE", - "MAX", - "MIN", - "MEDIAN", - "PRODUCT", - "STDEV", - "STDEVP", - "VAR", - "VARP", - "CUSTOM" - ], - "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.", - "type": "string" - } - }, - "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.", - "type": "object", - "properties": { - "destinationSpreadsheetId": { - "description": "The ID of the spreadsheet to copy the sheet to.", - "type": "string" - } - }, - "id": "CopySheetToAnotherSpreadsheetRequest" - }, - "PivotGroupSortValueBucket": { - "description": "Information about which values in a pivot group should be used for sorting.", - "type": "object", - "properties": { - "buckets": { - "description": "Determines the bucket from which values are chosen to sort.\n\nFor example, in a pivot table with one row group & two column groups,\nthe row group can list up to two values. The first value corresponds\nto a value within the first column group, and the second value\ncorresponds to a value in the second column group. If no values\nare listed, this would indicate that the row should be sorted according\nto the \"Grand Total\" over the column groups. If a single value is listed,\nthis would correspond to using the \"Total\" of that bucket.", - "items": { - "$ref": "ExtendedValue" - }, - "type": "array" - }, - "valuesIndex": { - "format": "int32", - "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.", - "type": "integer" - } - }, - "id": "PivotGroupSortValueBucket" - }, - "CandlestickChartSpec": { - "properties": { - "data": { - "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.", - "items": { - "$ref": "CandlestickData" - }, - "type": "array" - }, - "domain": { - "$ref": "CandlestickDomain", - "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values." - } - }, - "id": "CandlestickChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", - "type": "object" - }, - "CandlestickData": { - "properties": { - "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" - }, - "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" - }, - "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" - }, - "openSeries": { - "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow.", - "$ref": "CandlestickSeries" - } - }, - "id": "CandlestickData", - "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", - "type": "object" - }, - "EmbeddedObjectPosition": { - "properties": { - "newSheet": { - "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing.", - "type": "boolean" - }, - "overlayPosition": { - "$ref": "OverlayPosition", - "description": "The position at which the object is overlaid on top of a grid." - }, - "sheetId": { - "format": "int32", - "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.", - "type": "integer" - } - }, - "id": "EmbeddedObjectPosition", - "description": "The position of an embedded object such as a chart.", - "type": "object" - }, - "DeleteProtectedRangeRequest": { - "properties": { - "protectedRangeId": { - "format": "int32", - "description": "The ID of the protected range to delete.", - "type": "integer" - } - }, - "id": "DeleteProtectedRangeRequest", - "description": "Deletes the protected range with the given ID.", - "type": "object" - }, - "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": { - "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.", - "$ref": "GridRange" - }, - "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" - } - }, - "id": "AutoFillRequest" - }, - "GradientRule": { - "properties": { - "midpoint": { - "$ref": "InterpolationPoint", - "description": "An optional midway interpolation point." - }, - "maxpoint": { - "$ref": "InterpolationPoint", - "description": "The final interpolation point." - }, - "minpoint": { - "description": "The starting interpolation point.", - "$ref": "InterpolationPoint" - } - }, - "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": { - "description": "The request for clearing a range of values in a spreadsheet.", - "type": "object", - "properties": {}, - "id": "ClearValuesRequest" - }, - "SetBasicFilterRequest": { - "properties": { - "filter": { - "description": "The filter to set.", - "$ref": "BasicFilter" - } - }, - "id": "SetBasicFilterRequest", - "description": "Sets the basic filter associated with a sheet.", - "type": "object" - }, - "InterpolationPoint": { - "description": "A single interpolation point on a gradient conditional format.\nThese pin the gradient color scale according to the color,\ntype and value chosen.", - "type": "object", - "properties": { - "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", - "MAX", - "NUMBER", - "PERCENT", - "PERCENTILE" - ], - "description": "How the value should be interpreted.", - "type": "string" - }, - "value": { - "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX.", - "type": "string" - } - }, - "id": "InterpolationPoint" - } - }, - "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/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" - }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" - }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" - }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - } - } - } - }, - "rootUrl": "https://sheets.googleapis.com/", - "ownerDomain": "google.com", - "name": "sheets", - "batchPath": "batch", - "title": "Google Sheets API", - "ownerName": "Google", - "resources": { - "spreadsheets": { - "methods": { - "batchUpdate": { - "id": "sheets.spreadsheets.batchUpdate", - "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate", - "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes.", - "request": { - "$ref": "BatchUpdateSpreadsheetRequest" - }, - "response": { - "$ref": "BatchUpdateSpreadsheetResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The spreadsheet to apply the updates to.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate" - }, - "create": { - "response": { - "$ref": "Spreadsheet" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "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" - } - }, - "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.", - "response": { - "$ref": "Spreadsheet" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "GET", - "parameters": { - "spreadsheetId": { - "description": "The spreadsheet to request.", - "type": "string", - "required": true, - "location": "path" - }, - "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" - }, - "ranges": { - "repeated": true, - "location": "query", - "description": "The ranges to retrieve from the spreadsheet.", - "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}" + "parameters": { + "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" + }, + "ranges": { + "repeated": true, + "location": "query", + "description": "The ranges to retrieve from the spreadsheet.", + "type": "string" + }, + "spreadsheetId": { + "description": "The spreadsheet to request.", + "type": "string", + "required": true, + "location": "path" + } + }, + "flatPath": "v4/spreadsheets/{spreadsheetId}", + "path": "v4/spreadsheets/{spreadsheetId}", + "id": "sheets.spreadsheets.get" } }, "resources": { "values": { "methods": { "get": { + "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range.", + "httpMethod": "GET", "response": { "$ref": "ValueRange" }, @@ -4058,16 +105,21 @@ "spreadsheetId", "range" ], - "httpMethod": "GET", "parameters": { + "range": { + "location": "path", + "description": "The A1 notation of the values to retrieve.", + "type": "string", + "required": true + }, "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" }, "valueRenderOption": { "enum": [ @@ -4080,26 +132,20 @@ "location": "query" }, "majorDimension": { + "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" + "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]]`." }, "spreadsheetId": { - "location": "path", "description": "The ID of the spreadsheet to retrieve data from.", "type": "string", - "required": true - }, - "range": { - "location": "path", - "description": "The A1 notation of the values to retrieve.", - "type": "string", - "required": true + "required": true, + "location": "path" } }, "scopes": [ @@ -4110,54 +156,38 @@ "https://www.googleapis.com/auth/spreadsheets.readonly" ], "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "id": "sheets.spreadsheets.values.get", "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range." + "id": "sheets.spreadsheets.values.get" }, "update": { - "response": { - "$ref": "UpdateValuesResponse" + "request": { + "$ref": "ValueRange" }, + "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.", + "httpMethod": "PUT", "parameterOrder": [ "spreadsheetId", "range" ], - "httpMethod": "PUT", + "response": { + "$ref": "UpdateValuesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/spreadsheets" ], "parameters": { - "valueInputOption": { - "location": "query", - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ], - "description": "How the input data should be interpreted.", - "type": "string" - }, - "responseDateTimeRenderOption": { - "location": "query", - "enum": [ - "SERIAL_NUMBER", - "FORMATTED_STRING" - ], - "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].", - "type": "string" + "range": { + "type": "string", + "required": true, + "location": "path", + "description": "The A1 notation of the values to update." }, "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", - "location": "query" - }, - "range": { - "location": "path", - "description": "The A1 notation of the values to update.", - "type": "string", - "required": true + "type": "boolean" }, "spreadsheetId": { "description": "The ID of the spreadsheet to update.", @@ -4166,42 +196,46 @@ "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": { + "type": "string", + "location": "query", + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "description": "How the input data should be interpreted." + }, + "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" } }, "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "id": "sheets.spreadsheets.values.update", "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "request": { - "$ref": "ValueRange" - }, - "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption." + "id": "sheets.spreadsheets.values.update" }, "batchUpdate": { - "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.", - "request": { - "$ref": "BatchUpdateValuesRequest" - }, - "response": { - "$ref": "BatchUpdateValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", "parameters": { "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", "type": "string", "required": true, - "location": "path" + "location": "path", + "description": "The ID of the spreadsheet to update." } }, "scopes": [ @@ -4210,12 +244,21 @@ "https://www.googleapis.com/auth/spreadsheets" ], "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", + "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", "id": "sheets.spreadsheets.values.batchUpdate", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate" + "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.", + "request": { + "$ref": "BatchUpdateValuesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "spreadsheetId" + ], + "response": { + "$ref": "BatchUpdateValuesResponse" + } }, "clear": { - "id": "sheets.spreadsheets.values.clear", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", "request": { "$ref": "ClearValuesRequest" }, @@ -4235,19 +278,21 @@ ], "parameters": { "spreadsheetId": { - "location": "path", "description": "The ID of the spreadsheet to update.", "type": "string", - "required": true + "required": true, + "location": "path" }, "range": { + "location": "path", "description": "The A1 notation of the values to clear.", "type": "string", - "required": true, - "location": "path" + "required": true } }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear" + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", + "id": "sheets.spreadsheets.values.clear", + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear" }, "batchGet": { "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.", @@ -4258,22 +303,15 @@ "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": { "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" }, "valueRenderOption": { "location": "query", @@ -4302,48 +340,37 @@ "location": "query" }, "spreadsheetId": { - "location": "path", "description": "The ID of the spreadsheet to retrieve data from.", "type": "string", - "required": true + "required": true, + "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/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ], "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGet", "id": "sheets.spreadsheets.values.batchGet", "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet" }, "append": { - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", - "id": "sheets.spreadsheets.values.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" }, - "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.", - "httpMethod": "POST", - "parameterOrder": [ - "spreadsheetId", - "range" - ], "response": { "$ref": "AppendValuesResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" + "parameterOrder": [ + "spreadsheetId", + "range" ], + "httpMethod": "POST", "parameters": { - "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.", - "type": "string", - "required": true, - "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" - }, "spreadsheetId": { "description": "The ID of the spreadsheet to update.", "type": "string", @@ -4351,207 +378,4180 @@ "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": { + "type": "string", "location": "query", "enum": [ "OVERWRITE", "INSERT_ROWS" ], - "description": "How the input data should be inserted.", - "type": "string" + "description": "How the input data should be inserted." }, "valueInputOption": { - "location": "query", "enum": [ "INPUT_VALUE_OPTION_UNSPECIFIED", "RAW", "USER_ENTERED" ], "description": "How the input data should be interpreted.", - "type": "string" + "type": "string", + "location": "query" }, "responseDateTimeRenderOption": { + "type": "string", "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" + "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]." + }, + "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.", + "type": "string", + "required": true, + "location": "path" + }, + "includeValuesInResponse": { + "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.", + "type": "boolean" + } + }, + "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", + "id": "sheets.spreadsheets.values.append", + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append" + }, + "batchClear": { + "httpMethod": "POST", + "parameterOrder": [ + "spreadsheetId" + ], + "response": { + "$ref": "BatchClearValuesResponse" + }, + "parameters": { + "spreadsheetId": { + "location": "path", + "description": "The ID of the spreadsheet to update.", + "type": "string", + "required": true + } + }, + "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", + "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" + } + } + } + }, + "sheets": { + "methods": { + "copyTo": { + "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "id": "sheets.spreadsheets.sheets.copyTo", + "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "request": { + "$ref": "CopySheetToAnotherSpreadsheetRequest" + }, + "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet.", + "response": { + "$ref": "SheetProperties" + }, + "parameterOrder": [ + "spreadsheetId", + "sheetId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/spreadsheets" + ], + "parameters": { + "spreadsheetId": { + "description": "The ID of the spreadsheet containing the sheet to copy.", + "type": "string", + "required": true, + "location": "path" + }, + "sheetId": { + "location": "path", + "format": "int32", + "description": "The ID of the sheet to copy.", + "type": "integer", + "required": true } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append" + } + } + } + } + } + } + }, + "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.", + "default": "true", + "type": "boolean" + }, + "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." + }, + "$.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": { + "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": { + "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.", + "default": "true", + "type": "boolean", + "location": "query" + } + }, + "version": "v4", + "baseUrl": "https://sheets.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Reads and writes Google Sheets.", + "servicePath": "", + "basePath": "", + "id": "sheets:v4", + "revision": "20170713", + "documentationLink": "https://developers.google.com/sheets/", + "discoveryVersion": "v1", + "version_module": "True", + "schemas": { + "DeleteProtectedRangeRequest": { + "description": "Deletes the protected range with the given ID.", + "type": "object", + "properties": { + "protectedRangeId": { + "format": "int32", + "description": "The ID of the protected range to delete.", + "type": "integer" + } + }, + "id": "DeleteProtectedRangeRequest" + }, + "AutoFillRequest": { + "description": "Fills in more data based on existing data.", + "type": "object", + "properties": { + "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" + }, + "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." + } + }, + "id": "AutoFillRequest" + }, + "GradientRule": { + "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", + "properties": { + "midpoint": { + "$ref": "InterpolationPoint", + "description": "An optional midway interpolation point." + }, + "maxpoint": { + "$ref": "InterpolationPoint", + "description": "The final interpolation point." + }, + "minpoint": { + "$ref": "InterpolationPoint", + "description": "The starting interpolation point." + } + } + }, + "SetBasicFilterRequest": { + "type": "object", + "properties": { + "filter": { + "$ref": "BasicFilter", + "description": "The filter to set." + } + }, + "id": "SetBasicFilterRequest", + "description": "Sets the basic filter associated with a sheet." + }, + "ClearValuesRequest": { + "description": "The request for clearing a range of values in a spreadsheet.", + "type": "object", + "properties": {}, + "id": "ClearValuesRequest" + }, + "InterpolationPoint": { + "properties": { + "type": { + "type": "string", + "enumDescriptions": [ + "The default value, do not use.", + "The interpolation point will use the minimum value in the\ncells over the range of the conditional format.", + "The interpolation point will use the maximum value in the\ncells over the range of the conditional format.", + "The interpolation point will use exactly the value in\nInterpolationPoint.value.", + "The interpolation point will be the given percentage over\nall the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=(MAX(FLATTEN(range)) * (value / 100))\n + (MIN(FLATTEN(range)) * (1 - (value / 100)))`\n(where errors in the range are ignored when flattening).", + "The interpolation point will be the given percentile\nover all the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=PERCENTILE(FLATTEN(range), value / 100)`\n(where errors in the range are ignored when flattening)." + ], + "enum": [ + "INTERPOLATION_POINT_TYPE_UNSPECIFIED", + "MIN", + "MAX", + "NUMBER", + "PERCENT", + "PERCENTILE" + ], + "description": "How the value should be interpreted." + }, + "value": { + "type": "string", + "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX." + }, + "color": { + "description": "The color this interpolation point should use.", + "$ref": "Color" + } + }, + "id": "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" + }, + "FindReplaceResponse": { + "description": "The result of the find/replace.", + "type": "object", + "properties": { + "valuesChanged": { + "type": "integer", + "format": "int32", + "description": "The number of non-formula cells changed." + }, + "occurrencesChanged": { + "format": "int32", + "description": "The number of occurrences (possibly multiple within a cell) changed.\nFor example, if replacing `\"e\"` with `\"o\"` in `\"Google Sheets\"`, this would\nbe `\"3\"` because `\"Google Sheets\"` -\u003e `\"Googlo Shoots\"`.", + "type": "integer" + }, + "rowsChanged": { + "format": "int32", + "description": "The number of rows changed.", + "type": "integer" + }, + "sheetsChanged": { + "format": "int32", + "description": "The number of sheets changed.", + "type": "integer" + }, + "formulasChanged": { + "type": "integer", + "format": "int32", + "description": "The number of formula cells changed." + } + }, + "id": "FindReplaceResponse" + }, + "DeleteEmbeddedObjectRequest": { + "description": "Deletes the embedded object with the given ID.", + "type": "object", + "properties": { + "objectId": { + "format": "int32", + "description": "The ID of the embedded object to delete.", + "type": "integer" + } + }, + "id": "DeleteEmbeddedObjectRequest" + }, + "DuplicateFilterViewRequest": { + "description": "Duplicates a particular filter view.", + "type": "object", + "properties": { + "filterId": { + "format": "int32", + "description": "The ID of the filter being duplicated.", + "type": "integer" + } + }, + "id": "DuplicateFilterViewRequest" + }, + "DeleteSheetRequest": { + "description": "Deletes the requested sheet.", + "type": "object", + "properties": { + "sheetId": { + "type": "integer", + "format": "int32", + "description": "The ID of the sheet to delete." + } + }, + "id": "DeleteSheetRequest" + }, + "UpdateConditionalFormatRuleResponse": { + "description": "The result of updating a conditional format rule.", + "type": "object", + "properties": { + "oldRule": { + "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule).", + "$ref": "ConditionalFormatRule" + }, + "newIndex": { + "format": "int32", + "description": "The index of the new rule.", + "type": "integer" + }, + "newRule": { + "$ref": "ConditionalFormatRule", + "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)" + }, + "oldIndex": { + "format": "int32", + "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).", + "type": "integer" + } + }, + "id": "UpdateConditionalFormatRuleResponse" + }, + "DuplicateSheetRequest": { + "type": "object", + "properties": { + "newSheetName": { + "type": "string", + "description": "The name of the new sheet. If empty, a new name is chosen for you." + }, + "sourceSheetId": { + "format": "int32", + "description": "The sheet to duplicate.", + "type": "integer" + }, + "newSheetId": { + "format": "int32", + "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.", + "type": "integer" + }, + "insertSheetIndex": { + "format": "int32", + "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.", + "type": "integer" + } + }, + "id": "DuplicateSheetRequest", + "description": "Duplicates the contents of a sheet." + }, + "ConditionValue": { + "properties": { + "userEnteredValue": { + "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).", + "type": "string" + }, + "relativeDate": { + "enumDescriptions": [ + "Default value, do not use.", + "The value is one year before today.", + "The value is one month before today.", + "The value is one week before today.", + "The value is yesterday.", + "The value is today.", + "The value is tomorrow." + ], + "enum": [ + "RELATIVE_DATE_UNSPECIFIED", + "PAST_YEAR", + "PAST_MONTH", + "PAST_WEEK", + "YESTERDAY", + "TODAY", + "TOMORROW" + ], + "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" + } + }, + "id": "ConditionValue", + "description": "The value of the condition.", + "type": "object" + }, + "ExtendedValue": { + "properties": { + "errorValue": { + "description": "Represents an error.\nThis field is read-only.", + "$ref": "ErrorValue" + }, + "formulaValue": { + "description": "Represents a formula.", + "type": "string" + }, + "boolValue": { + "description": "Represents a boolean value.", + "type": "boolean" + }, + "stringValue": { + "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.", + "type": "string" + }, + "numberValue": { + "format": "double", + "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.", + "type": "number" + } + }, + "id": "ExtendedValue", + "description": "The kinds of value that a cell in a spreadsheet can have.", + "type": "object" + }, + "BandedRange": { + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range over which these properties are applied." + }, + "bandedRangeId": { + "format": "int32", + "description": "The id of the banded range.", + "type": "integer" + }, + "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" + }, + "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." + } + }, + "id": "BandedRange", + "description": "A banded (alternating colors) range in a sheet.", + "type": "object" + }, + "HistogramSeries": { + "description": "A histogram series containing the series color and data.", + "type": "object", + "properties": { + "barColor": { + "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." + } + }, + "id": "HistogramSeries" + }, + "BatchClearValuesResponse": { + "description": "The response when clearing a range of values in a spreadsheet.", + "type": "object", + "properties": { + "clearedRanges": { + "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)", + "items": { + "type": "string" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + } + }, + "id": "BatchClearValuesResponse" + }, + "Spreadsheet": { + "description": "Resource that represents a spreadsheet.", + "type": "object", + "properties": { + "properties": { + "$ref": "SpreadsheetProperties", + "description": "Overall properties of a spreadsheet." + }, + "namedRanges": { + "items": { + "$ref": "NamedRange" + }, + "type": "array", + "description": "The named ranges defined in a spreadsheet." + }, + "sheets": { + "description": "The sheets that are part of a spreadsheet.", + "items": { + "$ref": "Sheet" + }, + "type": "array" + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet.\nThis field is read-only.", + "type": "string" + }, + "spreadsheetUrl": { + "type": "string", + "description": "The url of the spreadsheet.\nThis field is read-only." + } + }, + "id": "Spreadsheet" + }, + "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.)" + } + }, + "id": "AddChartRequest" + }, + "UpdateProtectedRangeRequest": { + "properties": { + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "protectedRange": { + "$ref": "ProtectedRange", + "description": "The protected range to update with the new properties." + } + }, + "id": "UpdateProtectedRangeRequest", + "description": "Updates an existing protected range with the specified\nprotectedRangeId.", + "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": { + "fontSize": { + "format": "int32", + "description": "The size of the font.", + "type": "integer" + }, + "underline": { + "description": "True if the text is underlined.", + "type": "boolean" + }, + "foregroundColor": { + "$ref": "Color", + "description": "The foreground color of the text." + }, + "bold": { + "description": "True if the text is bold.", + "type": "boolean" + }, + "fontFamily": { + "description": "The font family.", + "type": "string" + }, + "strikethrough": { + "description": "True if the text has a strikethrough.", + "type": "boolean" + }, + "italic": { + "description": "True if the text is italicized.", + "type": "boolean" + } + }, + "id": "TextFormat" + }, + "AddSheetResponse": { + "description": "The result of adding a sheet.", + "type": "object", + "properties": { + "properties": { + "$ref": "SheetProperties", + "description": "The properties of the newly added sheet." + } + }, + "id": "AddSheetResponse" + }, + "AddFilterViewResponse": { + "description": "The result of adding a filter view.", + "type": "object", + "properties": { + "filter": { + "$ref": "FilterView", + "description": "The newly added filter view." + } + }, + "id": "AddFilterViewResponse" + }, + "IterativeCalculationSettings": { + "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.", + "type": "object", + "properties": { + "convergenceThreshold": { + "format": "double", + "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.", + "type": "number" + }, + "maxIterations": { + "format": "int32", + "description": "When iterative calculation is enabled, the maximum number of calculation\nrounds to perform.", + "type": "integer" + } + }, + "id": "IterativeCalculationSettings" + }, + "OverlayPosition": { + "type": "object", + "properties": { + "widthPixels": { + "format": "int32", + "description": "The width of the object, in pixels. Defaults to 600.", + "type": "integer" + }, + "offsetXPixels": { + "format": "int32", + "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.", + "type": "integer" + }, + "anchorCell": { + "$ref": "GridCoordinate", + "description": "The cell the object is anchored to." + }, + "heightPixels": { + "type": "integer", + "format": "int32", + "description": "The height of the object, in pixels. Defaults to 371." + }, + "offsetYPixels": { + "format": "int32", + "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.", + "type": "integer" + } + }, + "id": "OverlayPosition", + "description": "The location an object is overlaid on top of a grid." + }, + "SpreadsheetProperties": { + "type": "object", + "properties": { + "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", + "MINUTE", + "HOUR" + ], + "description": "The amount of time to wait before volatile functions are recalculated.", + "type": "string" + }, + "defaultFormat": { + "$ref": "CellFormat", + "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if the\ncell's format is equal to this default format.\nThis field is read-only." + }, + "timeZone": { + "description": "The time zone of the spreadsheet, in CLDR format such as\n`America/New_York`. If the time zone isn't recognized, this may\nbe a custom time zone such as `GMT-07:00`.", + "type": "string" + }, + "title": { + "description": "The title of the spreadsheet.", + "type": "string" + }, + "locale": { + "description": "The locale of the spreadsheet in one of the following formats:\n\n* an ISO 639-1 language code such as `en`\n\n* an ISO 639-2 language code such as `fil`, if no 639-1 code exists\n\n* a combination of the ISO language code and country code, such as `en_US`\n\nNote: when updating this field, not all locales/languages are supported.", + "type": "string" + }, + "iterativeCalculationSettings": { + "description": "Determines whether and how circular references are resolved with iterative\ncalculation. Absence of this field means that circular references will\nresult in calculation errors.", + "$ref": "IterativeCalculationSettings" + } + }, + "id": "SpreadsheetProperties", + "description": "Properties of a spreadsheet." + }, + "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", + "properties": { + "cell": { + "$ref": "CellData", + "description": "The data to write." + }, + "range": { + "description": "The range to repeat the cell in.", + "$ref": "GridRange" + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + } + } + }, + "AddChartResponse": { + "description": "The result of adding a chart to a spreadsheet.", + "type": "object", + "properties": { + "chart": { + "$ref": "EmbeddedChart", + "description": "The newly added chart." + } + }, + "id": "AddChartResponse" + }, + "InsertDimensionRequest": { + "description": "Inserts rows or columns in a sheet at a particular index.", + "type": "object", + "properties": { + "range": { + "description": "The dimensions to insert. Both the start and end indexes must be bounded.", + "$ref": "DimensionRange" + }, + "inheritFromBefore": { + "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green).", + "type": "boolean" + } + }, + "id": "InsertDimensionRequest" + }, + "UpdateSpreadsheetPropertiesRequest": { + "description": "Updates properties of a spreadsheet.", + "type": "object", + "properties": { + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "properties": { + "description": "The properties to update.", + "$ref": "SpreadsheetProperties" + } + }, + "id": "UpdateSpreadsheetPropertiesRequest" + }, + "ProtectedRange": { + "description": "A protected range.", + "type": "object", + "properties": { + "warningOnly": { + "description": "True if this protected range will show a warning when editing.\nWarning-based protection means that every user can edit data in the\nprotected range, except editing will prompt a warning asking the user\nto confirm the edit.\n\nWhen writing: if this field is true, then editors is ignored.\nAdditionally, if this field is changed from true to false and the\n`editors` field is not set (nor included in the field mask), then\nthe editors will be set to all the editors in the document.", + "type": "boolean" + }, + "requestingUserCanEdit": { + "type": "boolean", + "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only." + }, + "editors": { + "$ref": "Editors", + "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection." + }, + "range": { + "$ref": "GridRange", + "description": "The range that is being protected.\nThe range may be fully unbounded, in which case this is considered\na protected sheet.\n\nWhen writing, only one of range or named_range_id\nmay be set." + }, + "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.", + "items": { + "$ref": "GridRange" + }, + "type": "array" + }, + "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": { + "format": "int32", + "description": "The ID of the protected range.\nThis field is read-only.", + "type": "integer" + } + }, + "id": "ProtectedRange" + }, + "BatchUpdateValuesRequest": { + "id": "BatchUpdateValuesRequest", + "description": "The request for updating more than one range of values in a spreadsheet.", + "type": "object", + "properties": { + "responseDateTimeRenderOption": { + "enumDescriptions": [ + "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.", + "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)." + ], + "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": { + "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": { + "type": "boolean", + "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)." + }, + "data": { + "description": "The new values to apply to the spreadsheet.", + "items": { + "$ref": "ValueRange" + }, + "type": "array" + }, + "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.", + "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" + ] + } + } + }, + "DimensionProperties": { + "type": "object", + "properties": { + "pixelSize": { + "type": "integer", + "format": "int32", + "description": "The height (if a row) or width (if a column) of the dimension in pixels." + }, + "hiddenByUser": { + "type": "boolean", + "description": "True if this dimension is explicitly hidden." + }, + "hiddenByFilter": { + "description": "True if this dimension is being filtered.\nThis field is read-only.", + "type": "boolean" + } + }, + "id": "DimensionProperties", + "description": "Properties about a dimension." + }, + "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", + "properties": { + "endIndex": { + "format": "int32", + "description": "The end (exclusive) of the span, or not set if unbounded.", + "type": "integer" + }, + "startIndex": { + "format": "int32", + "description": "The start (inclusive) of the span, or not set if unbounded.", + "type": "integer" + }, + "sheetId": { + "format": "int32", + "description": "The sheet this span is on.", + "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." + ] + } + }, + "id": "DimensionRange" + }, + "NamedRange": { + "description": "A named range.", + "type": "object", + "properties": { + "name": { + "description": "The name of the named range.", + "type": "string" + }, + "namedRangeId": { + "description": "The ID of the named range.", + "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range this represents." + } + }, + "id": "NamedRange" + }, + "CutPasteRequest": { + "description": "Moves data from the source to the destination.", + "type": "object", + "properties": { + "destination": { + "description": "The top-left coordinate where the data should be pasted.", + "$ref": "GridCoordinate" + }, + "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. All the source data will be cut, regardless\nof what is pasted.", + "type": "string" + }, + "source": { + "$ref": "GridRange", + "description": "The source data to cut." + } + }, + "id": "CutPasteRequest" + }, + "BasicChartSeries": { + "properties": { + "targetAxis": { + "type": "string", + "enumDescriptions": [ + "Default value, do not use.", + "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", + "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", + "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." + ], + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], + "description": "The 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": { + "enumDescriptions": [ + "Default value, do not use.", + "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.", + "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.", + "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e." + ], + "enum": [ + "BASIC_CHART_TYPE_UNSPECIFIED", + "BAR", + "LINE", + "AREA", + "COLUMN", + "SCATTER", + "COMBO", + "STEPPED_AREA" + ], + "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" + }, + "series": { + "$ref": "ChartData", + "description": "The data being visualized in this chart series." + } + }, + "id": "BasicChartSeries", + "description": "A single series of data in a chart.\nFor example, if charting stock prices over time, multiple series may exist,\none for the \"Open Price\", \"High Price\", \"Low Price\" and \"Close Price\".", + "type": "object" + }, + "Borders": { + "description": "The borders of the cell.", + "type": "object", + "properties": { + "top": { + "$ref": "Border", + "description": "The top border of the cell." + }, + "left": { + "description": "The left border of the cell.", + "$ref": "Border" + }, + "right": { + "$ref": "Border", + "description": "The right border of the cell." + }, + "bottom": { + "description": "The bottom border of the cell.", + "$ref": "Border" + } + }, + "id": "Borders" + }, + "AutoResizeDimensionsRequest": { + "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", + "type": "object", + "properties": { + "dimensions": { + "description": "The dimensions to automatically resize.\nOnly COLUMNS are supported.", + "$ref": "DimensionRange" + } + }, + "id": "AutoResizeDimensionsRequest" + }, + "UpdateBordersRequest": { + "id": "UpdateBordersRequest", + "description": "Updates the borders of a range.\nIf a field is not set in the request, that means the border remains as-is.\nFor example, with two subsequent UpdateBordersRequest:\n\n 1. range: A1:A5 `{ top: RED, bottom: WHITE }`\n 2. range: A1:A5 `{ left: BLUE }`\n\nThat would result in A1:A5 having a borders of\n`{ top: RED, bottom: WHITE, left: BLUE }`.\nIf you want to clear a border, explicitly set the style to\nNONE.", + "type": "object", + "properties": { + "bottom": { + "$ref": "Border", + "description": "The border to put at the bottom of the range." + }, + "innerVertical": { + "$ref": "Border", + "description": "The vertical border to put within the range." + }, + "right": { + "description": "The border to put at the right of the range.", + "$ref": "Border" + }, + "range": { + "$ref": "GridRange", + "description": "The range whose borders should be updated." + }, + "innerHorizontal": { + "description": "The horizontal border to put within the range.", + "$ref": "Border" + }, + "top": { + "$ref": "Border", + "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" + } + } + }, + "CellFormat": { + "properties": { + "textDirection": { + "enumDescriptions": [ + "The text direction is not specified. Do not use this.", + "The text direction of left-to-right was set by the user.", + "The text direction of right-to-left was set by the user." + ], + "enum": [ + "TEXT_DIRECTION_UNSPECIFIED", + "LEFT_TO_RIGHT", + "RIGHT_TO_LEFT" + ], + "description": "The direction of the text in the cell.", + "type": "string" + }, + "borders": { + "$ref": "Borders", + "description": "The borders of the cell." + }, + "wrapStrategy": { + "enumDescriptions": [ + "The default value, do not use.", + "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |", + "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |", + "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |", + "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |" + ], + "enum": [ + "WRAP_STRATEGY_UNSPECIFIED", + "OVERFLOW_CELL", + "LEGACY_WRAP", + "CLIP", + "WRAP" + ], + "description": "The wrap strategy for the value in the cell.", + "type": "string" + }, + "textRotation": { + "$ref": "TextRotation", + "description": "The rotation applied to text in a cell" + }, + "numberFormat": { + "$ref": "NumberFormat", + "description": "A format describing how number values should be represented to the user." + }, + "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" + }, + "horizontalAlignment": { + "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." + ], + "enum": [ + "HORIZONTAL_ALIGN_UNSPECIFIED", + "LEFT", + "CENTER", + "RIGHT" + ], + "description": "The horizontal alignment of the value in the cell." + }, + "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." + }, + "verticalAlignment": { + "enumDescriptions": [ + "The vertical alignment is not specified. Do not use this.", + "The text is explicitly aligned to the top of the cell.", + "The text is explicitly aligned to the middle of the cell.", + "The text is explicitly aligned to the bottom of the cell." + ], + "enum": [ + "VERTICAL_ALIGN_UNSPECIFIED", + "TOP", + "MIDDLE", + "BOTTOM" + ], + "description": "The vertical alignment of the value in the cell.", + "type": "string" + }, + "padding": { + "$ref": "Padding", + "description": "The padding of the cell." + } + }, + "id": "CellFormat", + "description": "The format of a cell.", + "type": "object" + }, + "ClearValuesResponse": { + "description": "The response when clearing a range of values in a spreadsheet.", + "type": "object", + "properties": { + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "clearedRange": { + "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)", + "type": "string" + } + }, + "id": "ClearValuesResponse" + }, + "DeleteConditionalFormatRuleRequest": { + "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", + "type": "object", + "properties": { + "index": { + "format": "int32", + "description": "The zero-based index of the rule to be deleted.", + "type": "integer" + }, + "sheetId": { + "format": "int32", + "description": "The sheet the rule is being deleted from.", + "type": "integer" + } + }, + "id": "DeleteConditionalFormatRuleRequest" + }, + "DeleteNamedRangeRequest": { + "description": "Removes the named range with the given ID from the spreadsheet.", + "type": "object", + "properties": { + "namedRangeId": { + "description": "The ID of the named range to delete.", + "type": "string" + } + }, + "id": "DeleteNamedRangeRequest" + }, + "AddBandingResponse": { + "id": "AddBandingResponse", + "description": "The result of adding a banded range.", + "type": "object", + "properties": { + "bandedRange": { + "$ref": "BandedRange", + "description": "The banded range that was added." + } + } + }, + "ChartData": { + "properties": { + "sourceRange": { + "$ref": "ChartSourceRange", + "description": "The source ranges of the data." + } + }, + "id": "ChartData", + "description": "The data included in a domain or series.", + "type": "object" + }, + "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.", + "items": { + "$ref": "ValueRange" + }, + "type": "array" + } + }, + "id": "BatchGetValuesResponse", + "description": "The response when retrieving more than one range of values in a spreadsheet." + }, + "UpdateBandingRequest": { + "properties": { + "bandedRange": { + "$ref": "BandedRange", + "description": "The banded range to update with the new properties." + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + } + }, + "id": "UpdateBandingRequest", + "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": { + "alpha": { + "format": "float", + "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).", + "type": "number" + }, + "blue": { + "type": "number", + "format": "float", + "description": "The amount of blue in the color as a value in the interval [0, 1]." + }, + "green": { + "format": "float", + "description": "The amount of green in the color as a value in the interval [0, 1].", + "type": "number" + }, + "red": { + "format": "float", + "description": "The amount of red in the color as a value in the interval [0, 1].", + "type": "number" + } + }, + "id": "Color" + }, + "PivotGroup": { + "id": "PivotGroup", + "description": "A single grouping (either row or column) in a pivot table.", + "type": "object", + "properties": { + "valueBucket": { + "$ref": "PivotGroupSortValueBucket", + "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values." + }, + "valueMetadata": { + "description": "Metadata about values in the grouping.", + "items": { + "$ref": "PivotGroupValueMetadata" + }, + "type": "array" + }, + "showTotals": { + "description": "True if the pivot table should include the totals for this grouping.", + "type": "boolean" + }, + "sourceColumnOffset": { + "format": "int32", + "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`.", + "type": "integer" + }, + "sortOrder": { + "description": "The order the values in this group should be sorted.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use this.", + "Sort ascending.", + "Sort descending." + ], + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ] + } + } + }, + "PivotTable": { + "description": "A pivot table.", + "type": "object", + "properties": { + "rows": { + "items": { + "$ref": "PivotGroup" + }, + "type": "array", + "description": "Each row grouping in the pivot table." + }, + "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" + }, + "values": { + "description": "A list of values to include in the pivot table.", + "items": { + "$ref": "PivotValue" + }, + "type": "array" + }, + "source": { + "$ref": "GridRange", + "description": "The range the pivot table is reading data from." + }, + "columns": { + "description": "Each column grouping in the pivot table.", + "items": { + "$ref": "PivotGroup" + }, + "type": "array" + }, + "criteria": { + "additionalProperties": { + "$ref": "PivotFilterCriteria" + }, + "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.", + "type": "object" + } + }, + "id": "PivotTable" + }, + "ChartSourceRange": { + "properties": { + "sources": { + "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) & all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12", + "items": { + "$ref": "GridRange" + }, + "type": "array" + } + }, + "id": "ChartSourceRange", + "description": "Source ranges for a chart.", + "type": "object" + }, + "ValueRange": { + "type": "object", + "properties": { + "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" + }, + "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.", + "items": { + "items": { + "type": "any" }, - "batchClear": { - "response": { - "$ref": "BatchClearValuesResponse" - }, - "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "type": "string", - "required": true - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear", - "id": "sheets.spreadsheets.values.batchClear", - "path": "v4/spreadsheets/{spreadsheetId}/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." - } - } + "type": "array" + }, + "type": "array" + }, + "majorDimension": { + "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" + ], + "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." + } + }, + "id": "ValueRange", + "description": "Data within a range of the spreadsheet." + }, + "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": { + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "rows": { + "description": "The data to append.", + "items": { + "$ref": "RowData" + }, + "type": "array" + }, + "sheetId": { + "format": "int32", + "description": "The sheet ID to append the data to.", + "type": "integer" + } + }, + "id": "AppendCellsRequest" + }, + "AddBandingRequest": { + "id": "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" + } + } + }, + "Response": { + "description": "A single response from an update.", + "type": "object", + "properties": { + "findReplace": { + "$ref": "FindReplaceResponse", + "description": "A reply from doing a find/replace." + }, + "addSheet": { + "$ref": "AddSheetResponse", + "description": "A reply from adding a sheet." + }, + "updateConditionalFormatRule": { + "description": "A reply from updating a conditional format rule.", + "$ref": "UpdateConditionalFormatRuleResponse" + }, + "addNamedRange": { + "$ref": "AddNamedRangeResponse", + "description": "A reply from adding a named range." + }, + "addFilterView": { + "$ref": "AddFilterViewResponse", + "description": "A reply from adding a filter view." + }, + "addBanding": { + "$ref": "AddBandingResponse", + "description": "A reply from adding a banded range." + }, + "addProtectedRange": { + "$ref": "AddProtectedRangeResponse", + "description": "A reply from adding a protected range." + }, + "duplicateSheet": { + "description": "A reply from duplicating a sheet.", + "$ref": "DuplicateSheetResponse" + }, + "updateEmbeddedObjectPosition": { + "$ref": "UpdateEmbeddedObjectPositionResponse", + "description": "A reply from updating an embedded object's position." + }, + "deleteConditionalFormatRule": { + "$ref": "DeleteConditionalFormatRuleResponse", + "description": "A reply from deleting a conditional format rule." + }, + "duplicateFilterView": { + "description": "A reply from duplicating a filter view.", + "$ref": "DuplicateFilterViewResponse" + }, + "addChart": { + "$ref": "AddChartResponse", + "description": "A reply from adding a chart." + } + }, + "id": "Response" + }, + "EmbeddedChart": { + "properties": { + "chartId": { + "format": "int32", + "description": "The ID of the chart.", + "type": "integer" + }, + "position": { + "$ref": "EmbeddedObjectPosition", + "description": "The position of the chart." + }, + "spec": { + "$ref": "ChartSpec", + "description": "The specification of the chart." + } + }, + "id": "EmbeddedChart", + "description": "A chart embedded in a sheet.", + "type": "object" + }, + "TextFormatRun": { + "type": "object", + "properties": { + "format": { + "$ref": "TextFormat", + "description": "The format of this run. Absent values inherit the cell's format." + }, + "startIndex": { + "format": "int32", + "description": "The character index where this run starts.", + "type": "integer" + } + }, + "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." + }, + "InsertRangeRequest": { + "description": "Inserts cells into a range, shifting the existing cells over or down.", + "type": "object", + "properties": { + "shiftDimension": { + "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" + ], + "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." + }, + "range": { + "$ref": "GridRange", + "description": "The range to insert new cells into." + } + }, + "id": "InsertRangeRequest" + }, + "AddNamedRangeResponse": { + "description": "The result of adding a named range.", + "type": "object", + "properties": { + "namedRange": { + "description": "The named range to add.", + "$ref": "NamedRange" + } + }, + "id": "AddNamedRangeResponse" + }, + "RowData": { + "description": "Data about each cell in a row.", + "type": "object", + "properties": { + "values": { + "description": "The values in the row, one per column.", + "items": { + "$ref": "CellData" + }, + "type": "array" + } + }, + "id": "RowData" + }, + "Border": { + "description": "A border along a cell.", + "type": "object", + "properties": { + "width": { + "format": "int32", + "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", + "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" + }, + "GridData": { + "description": "Data in the grid, as well as metadata about the dimensions.", + "type": "object", + "properties": { + "columnMetadata": { + "items": { + "$ref": "DimensionProperties" + }, + "type": "array", + "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column." + }, + "startColumn": { + "format": "int32", + "description": "The first column this GridData refers to, zero-based.", + "type": "integer" + }, + "rowMetadata": { + "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.", + "items": { + "$ref": "DimensionProperties" + }, + "type": "array" + }, + "rowData": { + "items": { + "$ref": "RowData" + }, + "type": "array", + "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." + }, + "startRow": { + "format": "int32", + "description": "The first row this GridData refers to, zero-based.", + "type": "integer" + } + }, + "id": "GridData" + }, + "UpdateNamedRangeRequest": { + "type": "object", + "properties": { + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "namedRange": { + "$ref": "NamedRange", + "description": "The named range to update with the new properties." + } + }, + "id": "UpdateNamedRangeRequest", + "description": "Updates properties of the named range with the specified\nnamedRangeId." + }, + "FindReplaceRequest": { + "description": "Finds and replaces data in cells over a range, sheet, or all sheets.", + "type": "object", + "properties": { + "includeFormulas": { + "type": "boolean", + "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas." + }, + "matchEntireCell": { + "description": "True if the find value should match the entire cell.", + "type": "boolean" + }, + "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" + }, + "find": { + "description": "The value to search.", + "type": "string" + }, + "replacement": { + "description": "The value to use as the replacement.", + "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range to find/replace over." + }, + "sheetId": { + "type": "integer", + "format": "int32", + "description": "The sheet to find/replace over." + }, + "matchCase": { + "type": "boolean", + "description": "True if the search is case sensitive." + }, + "allSheets": { + "description": "True to find/replace over all sheets.", + "type": "boolean" + } + }, + "id": "FindReplaceRequest" + }, + "AddSheetRequest": { + "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.", + "type": "object", + "properties": { + "properties": { + "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" + } + }, + "id": "AddSheetRequest" + }, + "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": { + "description": "The range to write data to.\n\nIf the data in rows does not cover the entire requested range,\nthe fields matching those set in fields will be cleared.", + "$ref": "GridRange" + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + }, + "rows": { + "description": "The data to write.", + "items": { + "$ref": "RowData" + }, + "type": "array" + } + }, + "id": "UpdateCellsRequest" + }, + "RandomizeRangeRequest": { + "description": "Randomizes the order of the rows in a range.", + "type": "object", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range to randomize." + } + }, + "id": "RandomizeRangeRequest" + }, + "DeleteConditionalFormatRuleResponse": { + "description": "The result of deleting a conditional format rule.", + "type": "object", + "properties": { + "rule": { + "description": "The rule that was deleted.", + "$ref": "ConditionalFormatRule" + } + }, + "id": "DeleteConditionalFormatRuleResponse" + }, + "DeleteRangeRequest": { + "id": "DeleteRangeRequest", + "description": "Deletes a range of cells, shifting other cells into the deleted area.", + "type": "object", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range of cells to delete." + }, + "shiftDimension": { + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], + "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.", + "type": "string", + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ] + } + } + }, + "GridCoordinate": { + "type": "object", + "properties": { + "sheetId": { + "format": "int32", + "description": "The sheet this coordinate is on.", + "type": "integer" + }, + "columnIndex": { + "format": "int32", + "description": "The column index of the coordinate.", + "type": "integer" + }, + "rowIndex": { + "format": "int32", + "description": "The row index of the coordinate.", + "type": "integer" + } + }, + "id": "GridCoordinate", + "description": "A coordinate in a sheet.\nAll indexes are zero-based." + }, + "UpdateSheetPropertiesRequest": { + "description": "Updates properties of the sheet with the specified\nsheetId.", + "type": "object", + "properties": { + "properties": { + "description": "The properties to update.", + "$ref": "SheetProperties" + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + } + }, + "id": "UpdateSheetPropertiesRequest" + }, + "UnmergeCellsRequest": { + "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", + "description": "Unmerges cells in the given range." + }, + "GridProperties": { + "description": "Properties of a grid.", + "type": "object", + "properties": { + "rowCount": { + "format": "int32", + "description": "The number of rows in the grid.", + "type": "integer" + }, + "hideGridlines": { + "description": "True if the grid isn't showing gridlines in the UI.", + "type": "boolean" + }, + "frozenRowCount": { + "format": "int32", + "description": "The number of rows that are frozen in the grid.", + "type": "integer" + }, + "frozenColumnCount": { + "format": "int32", + "description": "The number of columns that are frozen in the grid.", + "type": "integer" + }, + "columnCount": { + "type": "integer", + "format": "int32", + "description": "The number of columns in the grid." + } + }, + "id": "GridProperties" + }, + "Sheet": { + "description": "A sheet in a spreadsheet.", + "type": "object", + "properties": { + "basicFilter": { + "$ref": "BasicFilter", + "description": "The filter on this sheet, if any." + }, + "merges": { + "description": "The ranges that are merged together.", + "items": { + "$ref": "GridRange" + }, + "type": "array" + }, + "data": { + "items": { + "$ref": "GridData" + }, + "type": "array", + "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)." + }, + "bandedRanges": { + "description": "The banded (i.e. alternating colors) ranges on this sheet.", + "items": { + "$ref": "BandedRange" + }, + "type": "array" + }, + "properties": { + "$ref": "SheetProperties", + "description": "The properties of the sheet." + }, + "charts": { + "description": "The specifications of every chart on this sheet.", + "items": { + "$ref": "EmbeddedChart" + }, + "type": "array" + }, + "filterViews": { + "description": "The filter views in this sheet.", + "items": { + "$ref": "FilterView" + }, + "type": "array" + }, + "conditionalFormats": { + "description": "The conditional format rules in this sheet.", + "items": { + "$ref": "ConditionalFormatRule" + }, + "type": "array" + }, + "protectedRanges": { + "description": "The protected ranges in this sheet.", + "items": { + "$ref": "ProtectedRange" + }, + "type": "array" + } + }, + "id": "Sheet" + }, + "SortSpec": { + "description": "A sort order associated with a specific column or row.", + "type": "object", + "properties": { + "dimensionIndex": { + "format": "int32", + "description": "The dimension the sort should be applied to.", + "type": "integer" + }, + "sortOrder": { + "description": "The order data should be sorted.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use this.", + "Sort ascending.", + "Sort descending." + ], + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ] + } + }, + "id": "SortSpec" + }, + "UpdateEmbeddedObjectPositionResponse": { + "description": "The result of updating an embedded object's position.", + "type": "object", + "properties": { + "position": { + "$ref": "EmbeddedObjectPosition", + "description": "The new position of the embedded object." + } + }, + "id": "UpdateEmbeddedObjectPositionResponse" + }, + "BooleanRule": { + "type": "object", + "properties": { + "condition": { + "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied.", + "$ref": "BooleanCondition" + }, + "format": { + "$ref": "CellFormat", + "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color." + } + }, + "id": "BooleanRule", + "description": "A rule that may or may not match, depending on the condition." + }, + "FilterCriteria": { + "type": "object", + "properties": { + "condition": { + "$ref": "BooleanCondition", + "description": "A condition that must be true for values to be shown.\n(This does not override hiddenValues -- if a value is listed there,\n it will still be hidden.)" + }, + "hiddenValues": { + "description": "Values that should be hidden.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "FilterCriteria", + "description": "Criteria for showing/hiding rows in a filter or filter view." + }, + "PivotGroupValueMetadata": { + "type": "object", + "properties": { + "collapsed": { + "description": "True if the data corresponding to the value is collapsed.", + "type": "boolean" + }, + "value": { + "$ref": "ExtendedValue", + "description": "The calculated value the metadata corresponds to.\n(Note that formulaValue is not valid,\n because the values will be calculated.)" + } + }, + "id": "PivotGroupValueMetadata", + "description": "Metadata about a value in a pivot grouping." + }, + "Editors": { + "description": "The editors of a protected range.", + "type": "object", + "properties": { + "users": { + "description": "The email addresses of users with edit access to the protected range.", + "items": { + "type": "string" + }, + "type": "array" + }, + "domainUsersCanEdit": { + "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain.", + "type": "boolean" + }, + "groups": { + "description": "The email addresses of groups with edit access to the protected range.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "Editors" + }, + "UpdateConditionalFormatRuleRequest": { + "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": { + "format": "int32", + "description": "The zero-based index of the rule that should be replaced or moved.", + "type": "integer" + }, + "sheetId": { + "format": "int32", + "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.", + "type": "integer" + }, + "newIndex": { + "format": "int32", + "description": "The zero-based new index the rule should end up at.", + "type": "integer" + } + }, + "id": "UpdateConditionalFormatRuleRequest" + }, + "BasicChartDomain": { + "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", + "type": "object", + "properties": { + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", + "type": "boolean" + }, + "domain": { + "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates.", + "$ref": "ChartData" + } + }, + "id": "BasicChartDomain" + }, + "DataValidationRule": { + "description": "A data validation rule.", + "type": "object", + "properties": { + "strict": { + "description": "True if invalid data should be rejected.", + "type": "boolean" + }, + "inputMessage": { + "description": "A message to show the user when adding data to the cell.", + "type": "string" + }, + "condition": { + "$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" + }, + "PasteDataRequest": { + "type": "object", + "properties": { + "type": { + "enum": [ + "PASTE_NORMAL", + "PASTE_VALUES", + "PASTE_FORMAT", + "PASTE_NO_BORDERS", + "PASTE_FORMULA", + "PASTE_DATA_VALIDATION", + "PASTE_CONDITIONAL_FORMATTING" + ], + "description": "How the data should be pasted.", + "type": "string", + "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.", + "type": "boolean" + }, + "coordinate": { + "$ref": "GridCoordinate", + "description": "The coordinate at which the data should start being inserted." + }, + "delimiter": { + "description": "The delimiter in the data.", + "type": "string" + }, + "data": { + "description": "The data to insert.", + "type": "string" + } + }, + "id": "PasteDataRequest", + "description": "Inserts data into the spreadsheet starting at the specified coordinate." + }, + "AppendDimensionRequest": { + "type": "object", + "properties": { + "dimension": { + "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." + ] + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The number of rows or columns to append." + }, + "sheetId": { + "format": "int32", + "description": "The sheet to append rows or columns to.", + "type": "integer" + } + }, + "id": "AppendDimensionRequest", + "description": "Appends rows or columns to the end of a sheet." + }, + "AddNamedRangeRequest": { + "properties": { + "namedRange": { + "$ref": "NamedRange", + "description": "The named range to add. The namedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)" + } + }, + "id": "AddNamedRangeRequest", + "description": "Adds a named range to the spreadsheet.", + "type": "object" + }, + "UpdateEmbeddedObjectPositionRequest": { + "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", + "type": "object", + "properties": { + "objectId": { + "format": "int32", + "description": "The ID of the object to moved.", + "type": "integer" + }, + "newPosition": { + "$ref": "EmbeddedObjectPosition", + "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you." + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + } + }, + "id": "UpdateEmbeddedObjectPositionRequest" + }, + "TextRotation": { + "description": "The rotation applied to text in a cell.", + "type": "object", + "properties": { + "angle": { + "format": "int32", + "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", + "type": "integer" + }, + "vertical": { + "description": "If true, text reads top to bottom, but the orientation of individual\ncharacters is unchanged.\nFor example:\n\n | V |\n | e |\n | r |\n | t |\n | i |\n | c |\n | a |\n | l |", + "type": "boolean" + } + }, + "id": "TextRotation" + }, + "PieChartSpec": { + "properties": { + "series": { + "$ref": "ChartData", + "description": "The data that covers the one and only series of the pie chart." + }, + "pieHole": { + "format": "double", + "description": "The size of the hole in the pie chart.", + "type": "number" + }, + "legendPosition": { + "enum": [ + "PIE_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "LABELED_LEGEND" + ], + "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." + ] + }, + "threeDimensional": { + "description": "True if the pie is three dimensional.", + "type": "boolean" + }, + "domain": { + "description": "The data that covers the domain of the pie chart.", + "$ref": "ChartData" + } + }, + "id": "PieChartSpec", + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.", + "type": "object" + }, + "UpdateFilterViewRequest": { + "type": "object", + "properties": { + "filter": { + "description": "The new properties of the filter view.", + "$ref": "FilterView" + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" + } + }, + "id": "UpdateFilterViewRequest", + "description": "Updates properties of the filter view." + }, + "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." + }, + "booleanRule": { + "$ref": "BooleanRule", + "description": "The formatting is either \"on\" or \"off\" according to the rule." + }, + "ranges": { + "description": "The ranges that will be formatted if the condition is true.\nAll the ranges must be on the same grid.", + "items": { + "$ref": "GridRange" + }, + "type": "array" + } + }, + "id": "ConditionalFormatRule" + }, + "CopyPasteRequest": { + "description": "Copies data from the source to the destination.", + "type": "object", + "properties": { + "pasteType": { + "description": "What kind of data to paste.", + "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." + ], + "enum": [ + "PASTE_NORMAL", + "PASTE_VALUES", + "PASTE_FORMAT", + "PASTE_NO_BORDERS", + "PASTE_FORMULA", + "PASTE_DATA_VALIDATION", + "PASTE_CONDITIONAL_FORMATTING" + ] + }, + "source": { + "$ref": "GridRange", + "description": "The source range to copy." + }, + "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": { + "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" + } + }, + "id": "CopyPasteRequest" + }, + "BooleanCondition": { + "id": "BooleanCondition", + "description": "A condition that can evaluate to true or false.\nBooleanConditions are used by conditional formatting,\ndata validation, and the criteria in filters.", + "type": "object", + "properties": { + "values": { + "items": { + "$ref": "ConditionValue" + }, + "type": "array", + "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": { + "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" + ], + "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 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." + ] + } + } + }, + "Request": { + "properties": { + "setBasicFilter": { + "description": "Sets the basic filter on a sheet.", + "$ref": "SetBasicFilterRequest" + }, + "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": { + "description": "Updates the spreadsheet's properties.", + "$ref": "UpdateSpreadsheetPropertiesRequest" + }, + "deleteEmbeddedObject": { + "description": "Deletes an embedded object (e.g, chart, image) in a sheet.", + "$ref": "DeleteEmbeddedObjectRequest" + }, + "updateFilterView": { + "description": "Updates the properties of a filter view.", + "$ref": "UpdateFilterViewRequest" + }, + "addBanding": { + "$ref": "AddBandingRequest", + "description": "Adds a new banded range" + }, + "appendCells": { + "$ref": "AppendCellsRequest", + "description": "Appends cells after the last row with data in a sheet." + }, + "autoResizeDimensions": { + "$ref": "AutoResizeDimensionsRequest", + "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension." + }, + "cutPaste": { + "$ref": "CutPasteRequest", + "description": "Cuts data from one area and pastes it to another." + }, + "mergeCells": { + "$ref": "MergeCellsRequest", + "description": "Merges cells together." + }, + "updateNamedRange": { + "$ref": "UpdateNamedRangeRequest", + "description": "Updates a named range." + }, + "updateSheetProperties": { + "$ref": "UpdateSheetPropertiesRequest", + "description": "Updates a sheet's properties." + }, + "autoFill": { + "description": "Automatically fills in more data based on existing data.", + "$ref": "AutoFillRequest" + }, + "deleteDimension": { + "$ref": "DeleteDimensionRequest", + "description": "Deletes rows or columns in a sheet." + }, + "sortRange": { + "$ref": "SortRangeRequest", + "description": "Sorts data in a range." + }, + "deleteProtectedRange": { + "$ref": "DeleteProtectedRangeRequest", + "description": "Deletes a protected range." + }, + "duplicateFilterView": { + "description": "Duplicates a filter view.", + "$ref": "DuplicateFilterViewRequest" + }, + "addChart": { + "$ref": "AddChartRequest", + "description": "Adds a chart." + }, + "findReplace": { + "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": { + "description": "Updates a chart's specifications.", + "$ref": "UpdateChartSpecRequest" + }, + "addSheet": { + "$ref": "AddSheetRequest", + "description": "Adds a sheet." + }, + "updateProtectedRange": { + "$ref": "UpdateProtectedRangeRequest", + "description": "Updates a protected range." + }, + "deleteFilterView": { + "description": "Deletes a filter view from a sheet.", + "$ref": "DeleteFilterViewRequest" + }, + "copyPaste": { + "description": "Copies data from one area and pastes it to another.", + "$ref": "CopyPasteRequest" + }, + "insertDimension": { + "$ref": "InsertDimensionRequest", + "description": "Inserts new rows or columns in a sheet." + }, + "deleteRange": { + "description": "Deletes a range of cells from a sheet, shifting the remaining cells.", + "$ref": "DeleteRangeRequest" + }, + "deleteBanding": { + "$ref": "DeleteBandingRequest", + "description": "Removes a banded range" + }, + "addFilterView": { + "$ref": "AddFilterViewRequest", + "description": "Adds a filter view." + }, + "updateBorders": { + "description": "Updates the borders in a range of cells.", + "$ref": "UpdateBordersRequest" + }, + "setDataValidation": { + "$ref": "SetDataValidationRequest", + "description": "Sets data validation for one or more cells." + }, + "deleteConditionalFormatRule": { + "description": "Deletes an existing conditional format rule.", + "$ref": "DeleteConditionalFormatRuleRequest" + }, + "clearBasicFilter": { + "description": "Clears the basic filter on a sheet.", + "$ref": "ClearBasicFilterRequest" + }, + "repeatCell": { + "$ref": "RepeatCellRequest", + "description": "Repeats a single cell across a range." + }, + "appendDimension": { + "$ref": "AppendDimensionRequest", + "description": "Appends dimensions to the end of a sheet." + }, + "updateConditionalFormatRule": { + "$ref": "UpdateConditionalFormatRuleRequest", + "description": "Updates an existing conditional format rule." + }, + "insertRange": { + "$ref": "InsertRangeRequest", + "description": "Inserts new cells in a sheet, shifting the existing cells." + }, + "moveDimension": { + "$ref": "MoveDimensionRequest", + "description": "Moves rows or columns to another location in a sheet." + }, + "randomizeRange": { + "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": { + "description": "Deletes a sheet.", + "$ref": "DeleteSheetRequest" + }, + "unmergeCells": { + "description": "Unmerges merged cells.", + "$ref": "UnmergeCellsRequest" + }, + "updateEmbeddedObjectPosition": { + "description": "Updates an embedded object's (e.g. chart, image) position.", + "$ref": "UpdateEmbeddedObjectPositionRequest" + }, + "updateDimensionProperties": { + "description": "Updates dimensions' properties.", + "$ref": "UpdateDimensionPropertiesRequest" + }, + "pasteData": { + "$ref": "PasteDataRequest", + "description": "Pastes data (HTML or delimited) into a sheet." + } + }, + "id": "Request", + "description": "A single kind of update to apply to a spreadsheet.", + "type": "object" + }, + "GridRange": { + "properties": { + "endColumnIndex": { + "format": "int32", + "description": "The end column (exclusive) of the range, or not set if unbounded.", + "type": "integer" + }, + "endRowIndex": { + "format": "int32", + "description": "The end row (exclusive) of the range, or not set if unbounded.", + "type": "integer" + }, + "startRowIndex": { + "format": "int32", + "description": "The start row (inclusive) of the range, or not set if unbounded.", + "type": "integer" + }, + "startColumnIndex": { + "format": "int32", + "description": "The start column (inclusive) of the range, or not set if unbounded.", + "type": "integer" + }, + "sheetId": { + "format": "int32", + "description": "The sheet this range is on.", + "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" + }, + "BasicChartSpec": { + "description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.", + "type": "object", + "properties": { + "legendPosition": { + "enum": [ + "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND" + ], + "description": "The position of the chart legend.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use.", + "The legend is rendered on the bottom of the chart.", + "The legend is rendered on the left of the chart.", + "The legend is rendered on the right of the chart.", + "The legend is rendered on the top of the chart.", + "No legend is rendered." + ] + }, + "domains": { + "items": { + "$ref": "BasicChartDomain" + }, + "type": "array", + "description": "The domain of data this is charting.\nOnly a single domain is supported." + }, + "lineSmoothing": { + "description": "Gets whether all lines should be rendered smooth or straight by default.\nApplies to Line charts.", + "type": "boolean" + }, + "headerCount": { + "format": "int32", + "description": "The number of rows or columns in the data that are \"headers\".\nIf not set, Google Sheets will guess how many rows are headers based\non the data.\n\n(Note that BasicChartAxis.title may override the axis title\n inferred from the header values.)", + "type": "integer" + }, + "stackedType": { + "type": "string", + "enumDescriptions": [ + "Default value, do not use.", + "Series are not stacked.", + "Series values are stacked, each value is rendered vertically beginning\nfrom the top of the value below it.", + "Vertical stacks are stretched to reach the top of the chart, with\nvalues laid out as percentages of each other." + ], + "enum": [ + "BASIC_CHART_STACKED_TYPE_UNSPECIFIED", + "NOT_STACKED", + "STACKED", + "PERCENT_STACKED" + ], + "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, and Stepped Area charts." + }, + "axis": { + "description": "The axis on the chart.", + "items": { + "$ref": "BasicChartAxis" + }, + "type": "array" + }, + "threeDimensional": { + "type": "boolean", + "description": "True to make the chart 3D.\nApplies to Bar and Column charts." + }, + "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", + "LINE", + "AREA", + "COLUMN", + "SCATTER", + "COMBO", + "STEPPED_AREA" + ], + "description": "The type of the chart.", + "type": "string" + }, + "series": { + "items": { + "$ref": "BasicChartSeries" + }, + "type": "array", + "description": "The data this chart is visualizing." + } + }, + "id": "BasicChartSpec" + }, + "SetDataValidationRequest": { + "properties": { + "rule": { + "$ref": "DataValidationRule", + "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range." + }, + "range": { + "$ref": "GridRange", + "description": "The range the data validation rule should apply to." + } + }, + "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" + }, + "BubbleChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.", + "type": "object", + "properties": { + "groupIds": { + "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional.", + "$ref": "ChartData" + }, + "bubbleLabels": { + "$ref": "ChartData", + "description": "The data containing the bubble labels. These do not need to be unique." + }, + "bubbleMinRadiusSize": { + "format": "int32", + "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.", + "type": "integer" + }, + "bubbleMaxRadiusSize": { + "format": "int32", + "description": "The max radius size of the bubbles, in pixels.\nIf specified, the field must be a positive value.", + "type": "integer" + }, + "series": { + "$ref": "ChartData", + "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically." + }, + "legendPosition": { + "description": "Where the legend of the 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.", + "The legend is rendered inside the chart area." + ], + "enum": [ + "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "INSIDE_LEGEND" + ] + }, + "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" + }, + "bubbleOpacity": { + "format": "float", + "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.", + "type": "number" + }, + "domain": { + "$ref": "ChartData", + "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally." + }, + "bubbleTextStyle": { + "$ref": "TextFormat", + "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported." + }, + "bubbleBorderColor": { + "$ref": "Color", + "description": "The bubble border color." + } + }, + "id": "BubbleChartSpec" + }, + "CellData": { + "id": "CellData", + "description": "Data about a specific cell.", + "type": "object", + "properties": { + "pivotTable": { + "description": "A pivot table anchored at this cell. The size of pivot table itself\nis computed dynamically based on its data, grouping, filters, values,\netc. Only the top-left cell of the pivot table contains the pivot table\ndefinition. The other cells will contain the calculated values of the\nresults of the pivot in their effective_value fields.", + "$ref": "PivotTable" + }, + "userEnteredFormat": { + "description": "The format the user entered for the cell.\n\nWhen writing, the new format will be merged with the existing format.", + "$ref": "CellFormat" + }, + "note": { + "type": "string", + "description": "Any note on the cell." + }, + "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." + }, + "dataValidation": { + "$ref": "DataValidationRule", + "description": "A data validation rule on the cell, if any.\n\nWhen writing, the new data validation rule will overwrite any prior rule." + }, + "userEnteredValue": { + "$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": { + "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.", + "$ref": "ExtendedValue" + }, + "textFormatRuns": { + "description": "Runs of rich text applied to subsections of the cell. Runs are only valid\non user entered strings, not formulas, bools, or numbers.\nRuns start at specific indexes in the text and continue until the next\nrun. Properties of a run will continue unless explicitly changed\nin a subsequent run (and properties of the first run will continue\nthe properties of the cell unless explicitly changed).\n\nWhen writing, the new runs will overwrite any prior runs. When writing a\nnew user_entered_value, previous runs will be erased.", + "items": { + "$ref": "TextFormatRun" + }, + "type": "array" + }, + "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" + } + } + }, + "BatchUpdateSpreadsheetRequest": { + "type": "object", + "properties": { + "responseIncludeGridData": { + "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.", + "type": "boolean" + }, + "responseRanges": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'." + }, + "includeSpreadsheetInResponse": { + "description": "Determines if the update response should include the spreadsheet\nresource.", + "type": "boolean" + }, + "requests": { + "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.", + "items": { + "$ref": "Request" + }, + "type": "array" + } + }, + "id": "BatchUpdateSpreadsheetRequest", + "description": "The request for updating any aspect of a spreadsheet." + }, + "BasicChartAxis": { + "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.", + "type": "object", + "properties": { + "format": { + "description": "The format of the title.\nOnly valid if the axis is not associated with the domain.", + "$ref": "TextFormat" + }, + "title": { + "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.", + "type": "string" + }, + "position": { + "enumDescriptions": [ + "Default value, do not use.", + "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.", + "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.", + "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis." + ], + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], + "description": "The position of this axis.", + "type": "string" + } + }, + "id": "BasicChartAxis" + }, + "Padding": { + "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.", + "type": "object", + "properties": { + "left": { + "format": "int32", + "description": "The left padding of the cell.", + "type": "integer" + }, + "right": { + "format": "int32", + "description": "The right padding of the cell.", + "type": "integer" + }, + "bottom": { + "format": "int32", + "description": "The bottom padding of the cell.", + "type": "integer" + }, + "top": { + "format": "int32", + "description": "The top padding of the cell.", + "type": "integer" + } + }, + "id": "Padding" + }, + "DeleteDimensionRequest": { + "id": "DeleteDimensionRequest", + "description": "Deletes the dimensions from the sheet.", + "type": "object", + "properties": { + "range": { + "description": "The dimensions to delete from the sheet.", + "$ref": "DimensionRange" + } + } + }, + "UpdateChartSpecRequest": { + "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)", + "type": "object", + "properties": { + "chartId": { + "format": "int32", + "description": "The ID of the chart to update.", + "type": "integer" + }, + "spec": { + "$ref": "ChartSpec", + "description": "The specification to apply to the chart." + } + }, + "id": "UpdateChartSpecRequest" + }, + "DeleteFilterViewRequest": { + "description": "Deletes a particular filter view.", + "type": "object", + "properties": { + "filterId": { + "format": "int32", + "description": "The ID of the filter to delete.", + "type": "integer" + } + }, + "id": "DeleteFilterViewRequest" + }, + "BatchUpdateValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "type": "object", + "properties": { + "totalUpdatedSheets": { + "format": "int32", + "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", + "type": "integer" + }, + "totalUpdatedCells": { + "format": "int32", + "description": "The total number of cells updated.", + "type": "integer" + }, + "totalUpdatedColumns": { + "format": "int32", + "description": "The total number of columns where at least one cell in the column was\nupdated.", + "type": "integer" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "totalUpdatedRows": { + "format": "int32", + "description": "The total number of rows where at least one cell in the row was updated.", + "type": "integer" + }, + "responses": { + "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.", + "items": { + "$ref": "UpdateValuesResponse" + }, + "type": "array" + } + }, + "id": "BatchUpdateValuesResponse" + }, + "SortRangeRequest": { + "description": "Sorts data in rows based on a sort order per column.", + "type": "object", + "properties": { + "range": { + "$ref": "GridRange", + "description": "The range to sort." + }, + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" + } + }, + "id": "SortRangeRequest" + }, + "MergeCellsRequest": { + "id": "MergeCellsRequest", + "description": "Merges all cells in the range.", + "type": "object", + "properties": { + "mergeType": { + "enumDescriptions": [ + "Create a single merge from the range", + "Create a merge for each column in the range", + "Create a merge for each row in the range" + ], + "enum": [ + "MERGE_ALL", + "MERGE_COLUMNS", + "MERGE_ROWS" + ], + "description": "How the cells should be merged.", + "type": "string" + }, + "range": { + "$ref": "GridRange", + "description": "The range of cells to merge." + } + } + }, + "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.)" + } + }, + "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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "BatchClearValuesRequest" + }, + "DuplicateFilterViewResponse": { + "description": "The result of a filter view being duplicated.", + "type": "object", + "properties": { + "filter": { + "description": "The newly created filter.", + "$ref": "FilterView" + } + }, + "id": "DuplicateFilterViewResponse" + }, + "DuplicateSheetResponse": { + "description": "The result of duplicating a sheet.", + "type": "object", + "properties": { + "properties": { + "description": "The properties of the duplicate sheet.", + "$ref": "SheetProperties" + } + }, + "id": "DuplicateSheetResponse" + }, + "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" + }, + "delimiterType": { + "enumDescriptions": [ + "Default value. This value must not be used.", + "\",\"", + "\";\"", + "\".\"", + "\" \"", + "A custom value as defined in delimiter." + ], + "enum": [ + "DELIMITER_TYPE_UNSPECIFIED", + "COMMA", + "SEMICOLON", + "PERIOD", + "SPACE", + "CUSTOM" + ], + "description": "The delimiter type to use.", + "type": "string" + }, + "source": { + "description": "The source data range. This must span exactly one column.", + "$ref": "GridRange" + } + }, + "id": "TextToColumnsRequest" + }, + "ClearBasicFilterRequest": { + "id": "ClearBasicFilterRequest", + "description": "Clears the basic filter, if any exists on the sheet.", + "type": "object", + "properties": { + "sheetId": { + "type": "integer", + "format": "int32", + "description": "The sheet ID on which the basic filter should be cleared." + } + } + }, + "BatchUpdateSpreadsheetResponse": { + "type": "object", + "properties": { + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "updatedSpreadsheet": { + "$ref": "Spreadsheet", + "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`." + }, + "replies": { + "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.", + "items": { + "$ref": "Response" + }, + "type": "array" + } + }, + "id": "BatchUpdateSpreadsheetResponse", + "description": "The reply for batch updating a spreadsheet." + }, + "DeleteBandingRequest": { + "description": "Removes the banded range with the given ID from the spreadsheet.", + "type": "object", + "properties": { + "bandedRangeId": { + "type": "integer", + "format": "int32", + "description": "The ID of the banded range to delete." + } + }, + "id": "DeleteBandingRequest" + }, + "AppendValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "type": "object", + "properties": { + "tableRange": { + "description": "The range (in A1 notation) of the table that values are being appended to\n(before the values were appended).\nEmpty if no table was found.", + "type": "string" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "updates": { + "$ref": "UpdateValuesResponse", + "description": "Information about the updates that were applied." + } + }, + "id": "AppendValuesResponse" + }, + "MoveDimensionRequest": { + "description": "Moves one or more rows or columns.", + "type": "object", + "properties": { + "destinationIndex": { + "format": "int32", + "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`.", + "type": "integer" + }, + "source": { + "$ref": "DimensionRange", + "description": "The source dimensions to move." + } + }, + "id": "MoveDimensionRequest" + }, + "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.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "PivotFilterCriteria" + }, + "AddFilterViewRequest": { + "type": "object", + "properties": { + "filter": { + "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)", + "$ref": "FilterView" + } + }, + "id": "AddFilterViewRequest", + "description": "Adds a filter view." + }, + "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": { + "format": "int32", + "description": "The zero-based index where the rule should be inserted.", + "type": "integer" + } + }, + "id": "AddConditionalFormatRuleRequest" + }, + "ChartSpec": { + "description": "The specifications of a chart.", + "type": "object", + "properties": { + "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." + }, + "pieChart": { + "$ref": "PieChartSpec", + "description": "A pie chart specification." + }, + "titleTextFormat": { + "description": "The title text format.\nStrikethrough and underline are not supported.", + "$ref": "TextFormat" + }, + "title": { + "description": "The title of the chart.", + "type": "string" + }, + "histogramChart": { + "description": "A histogram chart specification.", + "$ref": "HistogramChartSpec" + }, + "candlestickChart": { + "$ref": "CandlestickChartSpec", + "description": "A candlestick chart specification." + }, + "bubbleChart": { + "$ref": "BubbleChartSpec", + "description": "A bubble chart specification." + }, + "fontName": { + "description": "The name of the font to use by default for all chart text (e.g. title,\naxis labels, legend). If a font is specified for a specific part of the\nchart it will override this font name.", + "type": "string" + }, + "maximized": { + "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)", + "type": "boolean" + }, + "hiddenDimensionStrategy": { + "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." + ], + "enum": [ + "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED", + "SKIP_HIDDEN_ROWS_AND_COLUMNS", + "SKIP_HIDDEN_ROWS", + "SKIP_HIDDEN_COLUMNS", + "SHOW_ALL" + ], + "description": "Determines how the charts will use hidden rows or columns." + }, + "backgroundColor": { + "$ref": "Color", + "description": "The background color of the entire chart.\nNot applicable to Org charts." + } + }, + "id": "ChartSpec" + }, + "NumberFormat": { + "description": "The number format of a cell.", + "type": "object", + "properties": { + "type": { + "description": "The type of the number format.\nWhen writing, this field must be set.", + "type": "string", + "enumDescriptions": [ + "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.", + "Text formatting, e.g `1000.12`", + "Number formatting, e.g, `1,000.12`", + "Percent formatting, e.g `10.12%`", + "Currency formatting, e.g `$1,000.12`", + "Date formatting, e.g `9/26/2008`", + "Time formatting, e.g `3:59:00 PM`", + "Date+Time formatting, e.g `9/26/08 15:59:00`", + "Scientific number formatting, e.g `1.01E+03`" + ], + "enum": [ + "NUMBER_FORMAT_TYPE_UNSPECIFIED", + "TEXT", + "NUMBER", + "PERCENT", + "CURRENCY", + "DATE", + "TIME", + "DATE_TIME", + "SCIENTIFIC" + ] + }, + "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" + } + }, + "id": "NumberFormat" + }, + "CandlestickDomain": { + "properties": { + "data": { + "$ref": "ChartData", + "description": "The data of the CandlestickDomain." + }, + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", + "type": "boolean" + } + }, + "id": "CandlestickDomain", + "description": "The domain of a CandlestickChart.", + "type": "object" + }, + "SheetProperties": { + "properties": { + "title": { + "type": "string", + "description": "The name of the sheet." + }, + "index": { + "type": "integer", + "format": "int32", + "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1." + }, + "tabColor": { + "$ref": "Color", + "description": "The color of the tab in the UI." + }, + "sheetId": { + "type": "integer", + "format": "int32", + "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set." + }, + "rightToLeft": { + "type": "boolean", + "description": "True if the sheet is an RTL sheet instead of an LTR sheet." + }, + "hidden": { + "description": "True if the sheet is hidden in the UI, false if it's visible.", + "type": "boolean" + }, + "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" + }, + "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" + } + }, + "id": "SheetProperties", + "description": "Properties of a sheet.", + "type": "object" + }, + "UpdateDimensionPropertiesRequest": { + "type": "object", + "properties": { + "fields": { + "type": "string", + "format": "google-fieldmask", + "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." + }, + "properties": { + "$ref": "DimensionProperties", + "description": "Properties to update." + }, + "range": { + "description": "The rows or columns to update.", + "$ref": "DimensionRange" + } + }, + "id": "UpdateDimensionPropertiesRequest", + "description": "Updates properties of dimensions within the specified range." + }, + "SourceAndDestination": { + "type": "object", + "properties": { + "source": { + "$ref": "GridRange", + "description": "The location of the data to use as the source of the autofill." + }, + "dimension": { + "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" + ], + "description": "The dimension that data should be filled into." + }, + "fillLength": { + "format": "int32", + "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.", + "type": "integer" + } + }, + "id": "SourceAndDestination", + "description": "A combination of a source range and how to extend that source." + }, + "FilterView": { + "description": "A filter view.", + "type": "object", + "properties": { + "namedRangeId": { + "description": "The named range this filter view is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.", + "type": "string" + }, + "filterViewId": { + "type": "integer", + "format": "int32", + "description": "The ID of the filter view." + }, + "criteria": { + "type": "object", + "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." }, - "sheets": { - "methods": { - "copyTo": { - "id": "sheets.spreadsheets.sheets.copyTo", - "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", - "request": { - "$ref": "CopySheetToAnotherSpreadsheetRequest" - }, - "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet.", - "response": { - "$ref": "SheetProperties" - }, - "parameterOrder": [ - "spreadsheetId", - "sheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], - "parameters": { - "sheetId": { - "location": "path", - "format": "int32", - "description": "The ID of the sheet to copy.", - "type": "integer", - "required": true - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet containing the sheet to copy.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo" - } - } + "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.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" } - } - } - }, - "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + }, + "id": "FilterView" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" + "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": { + "nodeColor": { + "$ref": "Color", + "description": "The color of the org chart nodes." + }, + "tooltips": { + "$ref": "ChartData", + "description": "The data containing the tooltip for the corresponding node. A blank value\nresults in no tooltip being displayed for the node.\nThis field is optional." + }, + "selectedNodeColor": { + "$ref": "Color", + "description": "The color of the selected org chart nodes." + }, + "parentLabels": { + "$ref": "ChartData", + "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional." + }, + "nodeSize": { + "description": "The size of the org chart nodes.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use.", + "The small org chart node size.", + "The medium org chart node size.", + "The large org chart node size." + ], + "enum": [ + "ORG_CHART_LABEL_SIZE_UNSPECIFIED", + "SMALL", + "MEDIUM", + "LARGE" + ] + }, + "labels": { + "$ref": "ChartData", + "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique." + } + }, + "id": "OrgChartSpec" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "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": { + "footerColor": { + "$ref": "Color", + "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn." + }, + "headerColor": { + "$ref": "Color", + "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would." + }, + "firstBandColor": { + "$ref": "Color", + "description": "The first color that is alternating. (Required)" + }, + "secondBandColor": { + "$ref": "Color", + "description": "The second color that is alternating. (Required)" + } + }, + "id": "BandingProperties" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "AddProtectedRangeResponse": { + "description": "The result of adding a new protected range.", + "type": "object", + "properties": { + "protectedRange": { + "description": "The newly added protected range.", + "$ref": "ProtectedRange" + } + }, + "id": "AddProtectedRangeResponse" }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "BasicFilter": { + "description": "The default filter associated with a sheet.", + "type": "object", + "properties": { + "criteria": { + "additionalProperties": { + "$ref": "FilterCriteria" + }, + "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.", + "type": "object" + }, + "range": { + "$ref": "GridRange", + "description": "The range the filter covers." + }, + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "items": { + "$ref": "SortSpec" + }, + "type": "array" + } + }, + "id": "BasicFilter" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "CandlestickSeries": { + "description": "The series of a CandlestickData.", + "type": "object", + "properties": { + "data": { + "$ref": "ChartData", + "description": "The data of the CandlestickSeries." + } + }, + "id": "CandlestickSeries" + }, + "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": { + "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.", + "items": { + "$ref": "HistogramSeries" + }, + "type": "array" + }, + "legendPosition": { + "enum": [ + "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED", + "BOTTOM_LEGEND", + "LEFT_LEGEND", + "RIGHT_LEGEND", + "TOP_LEGEND", + "NO_LEGEND", + "INSIDE_LEGEND" + ], + "description": "The position of the chart legend.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use.", + "The legend is rendered on the bottom of the chart.", + "The legend is rendered on the left of the chart.", + "The legend is rendered on the right of the chart.", + "The legend is rendered on the top of the chart.", + "No legend is rendered.", + "The legend is rendered inside the chart area." + ] + }, + "bucketSize": { + "format": "double", + "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.", + "type": "number" + }, + "outlierPercentile": { + "format": "double", + "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.", + "type": "number" + } + }, + "id": "HistogramChartSpec" + }, + "UpdateValuesResponse": { + "description": "The response when updating a range of values in a spreadsheet.", + "type": "object", + "properties": { + "updatedData": { + "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`.", + "$ref": "ValueRange" + }, + "updatedRows": { + "format": "int32", + "description": "The number of rows where at least one cell in the row was updated.", + "type": "integer" + }, + "updatedColumns": { + "format": "int32", + "description": "The number of columns where at least one cell in the column was updated.", + "type": "integer" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, + "updatedRange": { + "type": "string", + "description": "The range (in A1 notation) that updates were applied to." + }, + "updatedCells": { + "format": "int32", + "description": "The number of cells updated.", + "type": "integer" + } + }, + "id": "UpdateValuesResponse" }, - "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" + "PivotValue": { + "description": "The definition of how a value in a pivot table should be calculated.", + "type": "object", + "properties": { + "formula": { + "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.", + "type": "string" + }, + "summarizeFunction": { + "enumDescriptions": [ + "The default, do not use.", + "Corresponds to the `SUM` function.", + "Corresponds to the `COUNTA` function.", + "Corresponds to the `COUNT` function.", + "Corresponds to the `COUNTUNIQUE` function.", + "Corresponds to the `AVERAGE` function.", + "Corresponds to the `MAX` function.", + "Corresponds to the `MIN` function.", + "Corresponds to the `MEDIAN` function.", + "Corresponds to the `PRODUCT` function.", + "Corresponds to the `STDEV` function.", + "Corresponds to the `STDEVP` function.", + "Corresponds to the `VAR` function.", + "Corresponds to the `VARP` function.", + "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set." + ], + "enum": [ + "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED", + "SUM", + "COUNTA", + "COUNT", + "COUNTUNIQUE", + "AVERAGE", + "MAX", + "MIN", + "MEDIAN", + "PRODUCT", + "STDEV", + "STDEVP", + "VAR", + "VARP", + "CUSTOM" + ], + "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.", + "type": "string" + }, + "sourceColumnOffset": { + "format": "int32", + "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`.", + "type": "integer" + }, + "name": { + "description": "A name to use for the value. This is only used if formula was set.\nOtherwise, the column name is used.", + "type": "string" + } + }, + "id": "PivotValue" }, - "key": { - "description": "API key. 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" + "ErrorValue": { + "description": "An error in a cell.", + "type": "object", + "properties": { + "type": { + "enum": [ + "ERROR_TYPE_UNSPECIFIED", + "ERROR", + "NULL_VALUE", + "DIVIDE_BY_ZERO", + "VALUE", + "REF", + "NAME", + "NUM", + "N_A", + "LOADING" + ], + "description": "The type of error.", + "type": "string", + "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." + ] + }, + "message": { + "type": "string", + "description": "A message with more information about the error\n(in the spreadsheet's locale)." + } + }, + "id": "ErrorValue" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "CopySheetToAnotherSpreadsheetRequest": { + "description": "The request to copy a sheet across spreadsheets.", + "type": "object", + "properties": { + "destinationSpreadsheetId": { + "description": "The ID of the spreadsheet to copy the sheet to.", + "type": "string" + } + }, + "id": "CopySheetToAnotherSpreadsheetRequest" }, - "quotaUser": { - "description": "Available 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" + "PivotGroupSortValueBucket": { + "description": "Information about which values in a pivot group should be used for sorting.", + "type": "object", + "properties": { + "valuesIndex": { + "format": "int32", + "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.", + "type": "integer" + }, + "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.", + "items": { + "$ref": "ExtendedValue" + }, + "type": "array" + } + }, + "id": "PivotGroupSortValueBucket" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" + "CandlestickChartSpec": { + "properties": { + "data": { + "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.", + "items": { + "$ref": "CandlestickData" + }, + "type": "array" + }, + "domain": { + "$ref": "CandlestickDomain", + "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values." + } + }, + "id": "CandlestickChartSpec", + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", + "type": "object" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "CandlestickData": { + "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", + "type": "object", + "properties": { + "highSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line." + }, + "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." + }, + "lowSeries": { + "$ref": "CandlestickSeries", + "description": "The range data (vertical axis) for the low/minimum value for each candle.\nThis is the bottom of the candle's center line." + }, + "openSeries": { + "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow.", + "$ref": "CandlestickSeries" + } + }, + "id": "CandlestickData" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "EmbeddedObjectPosition": { + "description": "The position of an embedded object such as a chart.", + "type": "object", + "properties": { + "newSheet": { + "type": "boolean", + "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing." + }, + "overlayPosition": { + "$ref": "OverlayPosition", + "description": "The position at which the object is overlaid on top of a grid." + }, + "sheetId": { + "format": "int32", + "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.", + "type": "integer" + } + }, + "id": "EmbeddedObjectPosition" + } + }, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "protocol": "rest", + "canonicalName": "Sheets", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" + }, + "https://www.googleapis.com/auth/drive.file": { + "description": "View and manage Google Drive files and folders that you have opened or created with this app" + }, + "https://www.googleapis.com/auth/spreadsheets.readonly": { + "description": "View your Google Spreadsheets" + }, + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" + }, + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" + } + } } - } + }, + "rootUrl": "https://sheets.googleapis.com/", + "ownerDomain": "google.com", + "name": "sheets", + "batchPath": "batch", + "title": "Google Sheets API" } diff --git a/DiscoveryJson/slides_v1.json b/DiscoveryJson/slides_v1.json index 1ca6924056..c631a6aecb 100644 --- a/DiscoveryJson/slides_v1.json +++ b/DiscoveryJson/slides_v1.json @@ -1,210 +1,14 @@ { + "servicePath": "", + "kind": "discovery#restDescription", + "description": "An API for creating and editing Google Slides presentations.", + "basePath": "", "id": "slides:v1", "documentationLink": "https://developers.google.com/slides/", - "revision": "20170713", + "revision": "20170717", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "OpaqueColor": { - "type": "object", - "properties": { - "rgbColor": { - "$ref": "RgbColor", - "description": "An opaque RGB color." - }, - "themeColor": { - "enum": [ - "THEME_COLOR_TYPE_UNSPECIFIED", - "DARK1", - "LIGHT1", - "DARK2", - "LIGHT2", - "ACCENT1", - "ACCENT2", - "ACCENT3", - "ACCENT4", - "ACCENT5", - "ACCENT6", - "HYPERLINK", - "FOLLOWED_HYPERLINK", - "TEXT1", - "BACKGROUND1", - "TEXT2", - "BACKGROUND2" - ], - "description": "An opaque theme color.", - "type": "string", - "enumDescriptions": [ - "Unspecified theme color. This value should not be used.", - "Represents the first dark color.", - "Represents the first light color.", - "Represents the second dark color.", - "Represents the second light color.", - "Represents the first accent color.", - "Represents the second accent color.", - "Represents the third accent color.", - "Represents the fourth accent color.", - "Represents the fifth accent color.", - "Represents the sixth accent color.", - "Represents the color to use for hyperlinks.", - "Represents the color to use for visited hyperlinks.", - "Represents the first text color.", - "Represents the first background color.", - "Represents the second text color.", - "Represents the second background color." - ] - } - }, - "id": "OpaqueColor", - "description": "A themeable solid color value." - }, - "ImageProperties": { - "description": "The properties of the Image.", - "type": "object", - "properties": { - "shadow": { - "$ref": "Shadow", - "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." - }, - "contrast": { - "format": "float", - "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.", - "type": "number" - }, - "link": { - "description": "The hyperlink destination of the image. If unset, there is no link.", - "$ref": "Link" - }, - "recolor": { - "$ref": "Recolor", - "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only." - }, - "cropProperties": { - "$ref": "CropProperties", - "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only." - }, - "outline": { - "$ref": "Outline", - "description": "The outline of the image. If not set, the the image has no outline." - }, - "brightness": { - "format": "float", - "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.", - "type": "number" - }, - "transparency": { - "format": "float", - "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.", - "type": "number" - } - }, - "id": "ImageProperties" - }, - "ReplaceAllShapesWithImageResponse": { - "properties": { - "occurrencesChanged": { - "format": "int32", - "description": "The number of shapes replaced with images.", - "type": "integer" - } - }, - "id": "ReplaceAllShapesWithImageResponse", - "description": "The result of replacing shapes with an image.", - "type": "object" - }, - "Line": { - "description": "A PageElement kind representing a\nline, curved connector, or bent connector.", - "type": "object", - "properties": { - "lineType": { - "enum": [ - "TYPE_UNSPECIFIED", - "STRAIGHT_CONNECTOR_1", - "BENT_CONNECTOR_2", - "BENT_CONNECTOR_3", - "BENT_CONNECTOR_4", - "BENT_CONNECTOR_5", - "CURVED_CONNECTOR_2", - "CURVED_CONNECTOR_3", - "CURVED_CONNECTOR_4", - "CURVED_CONNECTOR_5" - ], - "description": "The type of the line.", - "type": "string", - "enumDescriptions": [ - "An unspecified line type.", - "Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType\n'straightConnector1'.", - "Bent connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector2'.", - "Bent connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector3'.", - "Bent connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector4'.", - "Bent connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector5'.", - "Curved connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector2'.", - "Curved connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector3'.", - "Curved connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector4'.", - "Curved connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector5'." - ] - }, - "lineProperties": { - "$ref": "LineProperties", - "description": "The properties of the line." - } - }, - "id": "Line" - }, - "CreateSheetsChartRequest": { - "id": "CreateSheetsChartRequest", - "description": "Creates an embedded Google Sheets chart.\n\nNOTE: Chart creation requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", - "type": "object", - "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." - }, - "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" - }, - "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the chart.", - "type": "string" - }, - "chartId": { - "format": "int32", - "description": "The ID of the specific chart in the Google Sheets spreadsheet.", - "type": "integer" - } - } - }, - "BatchUpdatePresentationResponse": { - "description": "Response message from a batch update.", - "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.", - "items": { - "$ref": "Response" - }, - "type": "array" - }, - "presentationId": { - "description": "The presentation the updates were applied to.", - "type": "string" - } - }, - "id": "BatchUpdatePresentationResponse" - }, "CreateImageResponse": { "description": "The result of creating an image.", "type": "object", @@ -217,10 +21,13 @@ "id": "CreateImageResponse" }, "SlideProperties": { - "id": "SlideProperties", "description": "The properties of Page that are only\nrelevant for pages with page_type SLIDE.", "type": "object", "properties": { + "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" + }, "masterObjectId": { "description": "The object ID of the master that this slide is based on.", "type": "string" @@ -228,12 +35,9 @@ "layoutObjectId": { "description": "The object ID of the layout 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": "SlideProperties" }, "MasterProperties": { "properties": { @@ -250,29 +54,33 @@ "description": "A single response from an update.", "type": "object", "properties": { + "createImage": { + "$ref": "CreateImageResponse", + "description": "The result of creating an image." + }, "createVideo": { "$ref": "CreateVideoResponse", "description": "The result of creating a video." }, - "replaceAllShapesWithSheetsChart": { - "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart.", - "$ref": "ReplaceAllShapesWithSheetsChartResponse" - }, "createSheetsChart": { - "$ref": "CreateSheetsChartResponse", - "description": "The result of creating a Google Sheets chart." + "description": "The result of creating a Google Sheets chart.", + "$ref": "CreateSheetsChartResponse" + }, + "replaceAllShapesWithSheetsChart": { + "$ref": "ReplaceAllShapesWithSheetsChartResponse", + "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart." }, "replaceAllShapesWithImage": { - "$ref": "ReplaceAllShapesWithImageResponse", - "description": "The result of replacing all shapes matching some criteria with an\nimage." + "description": "The result of replacing all shapes matching some criteria with an\nimage.", + "$ref": "ReplaceAllShapesWithImageResponse" }, "createTable": { "$ref": "CreateTableResponse", "description": "The result of creating a table." }, "replaceAllText": { - "$ref": "ReplaceAllTextResponse", - "description": "The result of replacing text." + "description": "The result of replacing text.", + "$ref": "ReplaceAllTextResponse" }, "createSlide": { "$ref": "CreateSlideResponse", @@ -283,16 +91,12 @@ "$ref": "DuplicateObjectResponse" }, "createShape": { - "description": "The result of creating a shape.", - "$ref": "CreateShapeResponse" + "$ref": "CreateShapeResponse", + "description": "The result of creating a shape." }, "createLine": { - "$ref": "CreateLineResponse", - "description": "The result of creating a line." - }, - "createImage": { - "$ref": "CreateImageResponse", - "description": "The result of creating an image." + "description": "The result of creating a line.", + "$ref": "CreateLineResponse" } }, "id": "Response" @@ -313,7 +117,13 @@ "id": "SubstringMatchCriteria" }, "LayoutReference": { + "description": "Slide layout reference. This may reference either:\n\n- A predefined layout\n- One of the layouts in the presentation.", + "type": "object", "properties": { + "layoutId": { + "description": "Layout ID: the object ID of one of the layouts in the presentation.", + "type": "string" + }, "predefinedLayout": { "description": "Predefined layout.", "type": "string", @@ -345,30 +155,24 @@ "MAIN_POINT", "BIG_NUMBER" ] - }, - "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" + "id": "LayoutReference" }, "TextRun": { + "description": "A TextElement kind that represents a run of text that all has the same\nstyling.", + "type": "object", "properties": { - "style": { - "$ref": "TextStyle", - "description": "The styling applied to this run." - }, "content": { - "type": "string", - "description": "The text of this run." + "description": "The text of this run.", + "type": "string" + }, + "style": { + "description": "The styling applied to this run.", + "$ref": "TextStyle" } }, - "id": "TextRun", - "description": "A TextElement kind that represents a run of text that all has the same\nstyling.", - "type": "object" + "id": "TextRun" }, "TableRange": { "description": "A table range represents a reference to a subset of a table.\n\nIt's important to note that the cells specified by a table range do not\nnecessarily form a rectangle. For example, let's say we have a 3 x 3 table\nwhere all the cells of the last row are merged together. The table looks\nlike this:\n\n \n [ ]\n\nA table range with location = (0, 0), row span = 3 and column span = 2\nspecifies the following cells:\n\n x x \n [ x ]", @@ -380,8 +184,8 @@ "type": "integer" }, "location": { - "description": "The starting location of the table range.", - "$ref": "TableCellLocation" + "$ref": "TableCellLocation", + "description": "The starting location of the table range." }, "columnSpan": { "format": "int32", @@ -392,9 +196,13 @@ "id": "TableRange" }, "CreateTableRequest": { - "description": "Creates a new table.", "type": "object", "properties": { + "rows": { + "type": "integer", + "format": "int32", + "description": "Number of rows in the table." + }, "columns": { "format": "int32", "description": "Number of columns in the table.", @@ -405,16 +213,12 @@ "type": "string" }, "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." - }, - "rows": { - "type": "integer", - "format": "int32", - "description": "Number of rows in the table." + "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.", + "$ref": "PageElementProperties" } }, - "id": "CreateTableRequest" + "id": "CreateTableRequest", + "description": "Creates a new table." }, "CreateTableResponse": { "description": "The result of creating a table.", @@ -428,10 +232,14 @@ "id": "CreateTableResponse" }, "Table": { - "id": "Table", "description": "A PageElement kind representing a\ntable.", "type": "object", "properties": { + "rows": { + "format": "int32", + "description": "Number of rows in the table.", + "type": "integer" + }, "tableColumns": { "description": "Properties of each column.", "items": { @@ -450,21 +258,15 @@ "$ref": "TableRow" }, "type": "array" - }, - "rows": { - "type": "integer", - "format": "int32", - "description": "Number of rows in the table." } - } + }, + "id": "Table" }, "PageBackgroundFill": { "description": "The page background fill.", "type": "object", "properties": { "propertyState": { - "description": "The background fill property state.\n\nUpdating the 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", "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.", @@ -474,15 +276,17 @@ "RENDERED", "NOT_RENDERED", "INHERIT" - ] + ], + "description": "The background fill property state.\n\nUpdating the the fill on a page will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a page, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.", + "type": "string" }, "stretchedPictureFill": { "$ref": "StretchedPictureFill", "description": "Stretched picture fill." }, "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." + "description": "Solid color fill.", + "$ref": "SolidFill" } }, "id": "PageBackgroundFill" @@ -498,8 +302,8 @@ "type": "string" }, "spreadsheetId": { - "type": "string", - "description": "The ID of the Google Sheets spreadsheet that contains the source chart." + "description": "The ID of the Google Sheets spreadsheet that contains the source chart.", + "type": "string" }, "chartId": { "format": "int32", @@ -512,6 +316,8 @@ "type": "object" }, "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", "properties": { "alpha": { "format": "float", @@ -519,19 +325,19 @@ "type": "number" }, "color": { - "$ref": "OpaqueColor", - "description": "The color value of the solid fill." + "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" + "id": "SolidFill" }, "ThemeColorPair": { + "description": "A pair mapping a theme color type to the concrete color it represents.", + "type": "object", "properties": { "color": { - "description": "The concrete color corresponding to the theme color type above.", - "$ref": "RgbColor" + "$ref": "RgbColor", + "description": "The concrete color corresponding to the theme color type above." }, "type": { "enumDescriptions": [ @@ -576,26 +382,26 @@ "type": "string" } }, - "id": "ThemeColorPair", - "description": "A pair mapping a theme color type to the concrete color it represents.", - "type": "object" + "id": "ThemeColorPair" }, "OptionalColor": { - "id": "OptionalColor", - "description": "A color that can either be fully opaque or fully transparent.", "type": "object", "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." }, "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": { "transform": { - "$ref": "AffineTransform", - "description": "The transform for the element." + "description": "The transform for the element.", + "$ref": "AffineTransform" }, "pageObjectId": { "description": "The object ID of the page where the element is located.", @@ -606,43 +412,41 @@ "$ref": "Size" } }, - "id": "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" + "id": "PageElementProperties" }, "SheetsChartProperties": { + "description": "The properties of the SheetsChart.", + "type": "object", "properties": { "chartImageProperties": { "$ref": "ImageProperties", "description": "The properties of the embedded chart image." } }, - "id": "SheetsChartProperties", - "description": "The properties of the SheetsChart.", - "type": "object" + "id": "SheetsChartProperties" }, "StretchedPictureFill": { - "description": "The stretched picture fill. The page or page element is filled entirely with\nthe specified picture. The picture is stretched to fit its container.", "type": "object", "properties": { + "size": { + "description": "The original size of the picture fill. This field is read-only.", + "$ref": "Size" + }, "contentUrl": { "description": "Reading the content_url:\n\nAn URL to a picture with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the picture as the original requester. Access to the\npicture may be lost if the presentation's sharing settings change.\n\nWriting the content_url:\n\nThe picture is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Pictures must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.", "type": "string" - }, - "size": { - "$ref": "Size", - "description": "The original size of the picture fill. This field is read-only." } }, - "id": "StretchedPictureFill" + "id": "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." }, "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" + "$ref": "TableCellLocation", + "description": "The reference table cell location from which a column will be deleted.\n\nThe column this cell spans will be deleted. If this is a merged cell,\nmultiple columns will be deleted. If no columns remain in the table after\nthis deletion, the whole table is deleted." }, "tableObjectId": { "description": "The table to delete columns from.", @@ -655,33 +459,31 @@ "description": "Update the styling of text in a Shape or\nTable.", "type": "object", "properties": { + "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" + }, + "objectId": { + "type": "string", + "description": "The object ID of the shape or table with the text to be styled." + }, "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." + "description": "The style(s) to set on the text.\n\nIf the value for a particular style matches that of the parent, that style\nwill be set to inherit.\n\nCertain text style changes may cause other changes meant to mirror the\nbehavior of the Slides editor. See the documentation of\nTextStyle for more information.", + "$ref": "TextStyle" }, "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." + "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" }, "fields": { + "type": "string", "format": "google-fieldmask", - "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.", - "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." - }, - "objectId": { - "description": "The object ID of the shape or table with the text to be styled.", - "type": "string" + "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `style` is implied and\nshould not be specified. A single `\"*\"` can be used as short-hand for\nlisting every field.\n\nFor example, to update the 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." } }, "id": "UpdateTextStyleRequest" }, "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", "properties": { "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.", @@ -695,11 +497,11 @@ "type": "string" } }, - "id": "List" + "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" }, "WeightedFontFamily": { - "description": "Represents a font family and weight used to style a TextRun.", - "type": "object", "properties": { "weight": { "format": "int32", @@ -711,43 +513,21 @@ "type": "string" } }, - "id": "WeightedFontFamily" + "id": "WeightedFontFamily", + "description": "Represents a font family and weight used to style a TextRun.", + "type": "object" }, "PageElement": { "description": "A visual element rendered on a page.", "type": "object", "properties": { - "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" - }, - "transform": { - "$ref": "AffineTransform", - "description": "The transform of the page element." - }, - "objectId": { - "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.", - "type": "string" - }, - "shape": { - "$ref": "Shape", - "description": "A generic shape." - }, "line": { - "$ref": "Line", - "description": "A line page element." + "description": "A line page element.", + "$ref": "Line" }, "description": { - "type": "string", - "description": "The description of the page element. Combined with title to display alt\ntext." + "description": "The description of the page element. Combined with title to display alt\ntext.", + "type": "string" }, "elementGroup": { "$ref": "Group", @@ -758,23 +538,45 @@ "$ref": "Image" }, "size": { - "description": "The size of the page element.", - "$ref": "Size" + "$ref": "Size", + "description": "The size of the page element." + }, + "title": { + "description": "The title of the page element. Combined with description to display alt\ntext.", + "type": "string" }, "sheetsChart": { - "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images.", - "$ref": "SheetsChart" + "$ref": "SheetsChart", + "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images." }, - "title": { - "type": "string", - "description": "The title of the page element. Combined with description to display alt\ntext." + "video": { + "$ref": "Video", + "description": "A video page element." + }, + "wordArt": { + "$ref": "WordArt", + "description": "A word art page element." + }, + "table": { + "$ref": "Table", + "description": "A table page element." + }, + "objectId": { + "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.", + "type": "string" + }, + "transform": { + "$ref": "AffineTransform", + "description": "The transform of the page element." + }, + "shape": { + "$ref": "Shape", + "description": "A generic shape." } }, "id": "PageElement" }, "CreateImageRequest": { - "id": "CreateImageRequest", - "description": "Creates an image.", "type": "object", "properties": { "objectId": { @@ -789,12 +591,18 @@ "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.", "type": "string" } - } + }, + "id": "CreateImageRequest", + "description": "Creates an image." }, "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": { + "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." + }, "textRange": { "description": "The range of text to apply the bullet presets to, based on TextElement indexes.", "$ref": "Range" @@ -804,6 +612,8 @@ "type": "string" }, "bulletPreset": { + "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.", + "type": "string", "enumDescriptions": [ "A bulleted list with a `DISC`, `CIRCLE` and `SQUARE` bullet glyph for the\nfirst 3 list nesting levels.", "A bulleted list with a `DIAMONDX`, `ARROW3D` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.", @@ -837,13 +647,7 @@ "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": { - "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" + ] } }, "id": "CreateParagraphBulletsRequest" @@ -853,8 +657,8 @@ "type": "object", "properties": { "width": { - "description": "The width of the object.", - "$ref": "Dimension" + "$ref": "Dimension", + "description": "The width of the object." }, "height": { "$ref": "Dimension", @@ -864,28 +668,31 @@ "id": "Size" }, "TextStyle": { - "description": "Represents the styling that can be applied to a TextRun.\n\nIf this text is contained in a shape with a parent placeholder, then these text styles may be\ninherited from the parent. Which text styles are inherited depend on the\nnesting level of lists:\n\n* A text run in a paragraph that is not in a list will inherit its text style\n from the the newline character in the paragraph at the 0 nesting level of\n the list inside the parent placeholder.\n* A text run in a paragraph that is in a list will inherit its text style\n from the newline character in the paragraph at its corresponding nesting\n level of the list inside the parent placeholder.\n\nInherited text styles are represented as unset fields in this message. If\ntext is contained in a shape without a parent placeholder, unsetting these\nfields will revert the style to a value matching the defaults in the Slides\neditor.", "type": "object", "properties": { + "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": { - "type": "boolean", - "description": "Whether or not the text is in small capital letters." + "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." }, - "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." - }, "underline": { "description": "Whether or not the text is underlined.", "type": "boolean" }, + "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.", + "$ref": "Link" + }, "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" + "$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." }, "bold": { "description": "Whether or not the text is rendered as bold.", @@ -895,25 +702,19 @@ "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.\n\nSome fonts can affect the weight of the text. If an update request\nspecifies values for both `font_family` and `bold`, the explicitly-set\n`bold` value is used.", "type": "string" }, - "italic": { - "description": "Whether or not the text is italicized.", - "type": "boolean" - }, "strikethrough": { "description": "Whether or not the text is struck through.", "type": "boolean" }, + "italic": { + "description": "Whether or not the text is italicized.", + "type": "boolean" + }, "fontSize": { "description": "The size of the text's font. When read, the `font_size` will specified in\npoints.", "$ref": "Dimension" }, "baselineOffset": { - "enum": [ - "BASELINE_OFFSET_UNSPECIFIED", - "NONE", - "SUPERSCRIPT", - "SUBSCRIPT" - ], "description": "The text's vertical offset from its normal position.\n\nText with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically\nrendered in a smaller font size, computed based on the `font_size` field.\nThe `font_size` itself is not affected by changes in this field.", "type": "string", "enumDescriptions": [ @@ -921,16 +722,21 @@ "The text is not vertically offset.", "The text is vertically offset upwards (superscript).", "The text is vertically offset downwards (subscript)." + ], + "enum": [ + "BASELINE_OFFSET_UNSPECIFIED", + "NONE", + "SUPERSCRIPT", + "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": "TextStyle" + "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." }, "UpdateVideoPropertiesRequest": { + "description": "Update the properties of a Video.", + "type": "object", "properties": { "fields": { "format": "google-fieldmask", @@ -942,30 +748,30 @@ "type": "string" }, "videoProperties": { - "$ref": "VideoProperties", - "description": "The video properties to update." + "description": "The video properties to update.", + "$ref": "VideoProperties" } }, - "id": "UpdateVideoPropertiesRequest", - "description": "Update the properties of a Video.", - "type": "object" + "id": "UpdateVideoPropertiesRequest" }, "Request": { - "description": "A single kind of update to apply to a presentation.", - "type": "object", "properties": { + "insertTableColumns": { + "$ref": "InsertTableColumnsRequest", + "description": "Inserts columns into a table." + }, "refreshSheetsChart": { "$ref": "RefreshSheetsChartRequest", "description": "Refreshes a Google Sheets chart." }, - "createTable": { - "$ref": "CreateTableRequest", - "description": "Creates a new table." - }, "updateTableCellProperties": { "description": "Updates the properties of a TableCell.", "$ref": "UpdateTableCellPropertiesRequest" }, + "createTable": { + "$ref": "CreateTableRequest", + "description": "Creates a new table." + }, "deleteObject": { "$ref": "DeleteObjectRequest", "description": "Deletes a page or page element from the presentation." @@ -975,41 +781,41 @@ "description": "Updates the styling of paragraphs within a Shape or Table." }, "duplicateObject": { - "description": "Duplicates a slide or page element.", - "$ref": "DuplicateObjectRequest" + "$ref": "DuplicateObjectRequest", + "description": "Duplicates a slide or page element." }, "deleteTableColumn": { "description": "Deletes a column from a table.", "$ref": "DeleteTableColumnRequest" }, + "createLine": { + "description": "Creates a line.", + "$ref": "CreateLineRequest" + }, "updateVideoProperties": { "$ref": "UpdateVideoPropertiesRequest", "description": "Updates the properties of a Video." }, - "createLine": { - "$ref": "CreateLineRequest", - "description": "Creates a line." - }, "createImage": { - "$ref": "CreateImageRequest", - "description": "Creates an image." + "description": "Creates an image.", + "$ref": "CreateImageRequest" }, "createParagraphBullets": { "description": "Creates bullets for paragraphs.", "$ref": "CreateParagraphBulletsRequest" }, "createVideo": { - "description": "Creates a video.", - "$ref": "CreateVideoRequest" - }, - "replaceAllShapesWithSheetsChart": { - "$ref": "ReplaceAllShapesWithSheetsChartRequest", - "description": "Replaces all shapes matching some criteria with a Google Sheets chart." + "$ref": "CreateVideoRequest", + "description": "Creates a video." }, "createSheetsChart": { "description": "Creates an embedded Google Sheets chart.", "$ref": "CreateSheetsChartRequest" }, + "replaceAllShapesWithSheetsChart": { + "$ref": "ReplaceAllShapesWithSheetsChartRequest", + "description": "Replaces all shapes matching some criteria with a Google Sheets chart." + }, "updatePageElementTransform": { "$ref": "UpdatePageElementTransformRequest", "description": "Updates the transform of a page element." @@ -1019,32 +825,32 @@ "description": "Updates the styling of text within a Shape or Table." }, "replaceAllShapesWithImage": { - "$ref": "ReplaceAllShapesWithImageRequest", - "description": "Replaces all shapes matching some criteria with an image." + "description": "Replaces all shapes matching some criteria with an image.", + "$ref": "ReplaceAllShapesWithImageRequest" }, "replaceAllText": { "$ref": "ReplaceAllTextRequest", "description": "Replaces all instances of specified text." }, "updateImageProperties": { - "$ref": "UpdateImagePropertiesRequest", - "description": "Updates the properties of an Image." + "description": "Updates the properties of an Image.", + "$ref": "UpdateImagePropertiesRequest" }, "createSlide": { - "description": "Creates a new slide.", - "$ref": "CreateSlideRequest" + "$ref": "CreateSlideRequest", + "description": "Creates a new slide." }, "insertTableRows": { - "description": "Inserts rows into a table.", - "$ref": "InsertTableRowsRequest" + "$ref": "InsertTableRowsRequest", + "description": "Inserts rows into a table." }, "updateLineProperties": { "$ref": "UpdateLinePropertiesRequest", "description": "Updates the properties of a Line." }, "updateSlidesPosition": { - "description": "Updates the position of a set of slides in the presentation.", - "$ref": "UpdateSlidesPositionRequest" + "$ref": "UpdateSlidesPositionRequest", + "description": "Updates the position of a set of slides in the presentation." }, "deleteTableRow": { "$ref": "DeleteTableRowRequest", @@ -1055,8 +861,8 @@ "description": "Updates the properties of a Shape." }, "insertText": { - "description": "Inserts text into a shape or table cell.", - "$ref": "InsertTextRequest" + "$ref": "InsertTextRequest", + "description": "Inserts text into a shape or table cell." }, "deleteText": { "$ref": "DeleteTextRequest", @@ -1066,33 +872,31 @@ "$ref": "UpdatePagePropertiesRequest", "description": "Updates the properties of a Page." }, - "deleteParagraphBullets": { - "$ref": "DeleteParagraphBulletsRequest", - "description": "Deletes bullets from paragraphs." - }, "createShape": { "$ref": "CreateShapeRequest", "description": "Creates a new shape." }, - "insertTableColumns": { - "description": "Inserts columns into a table.", - "$ref": "InsertTableColumnsRequest" + "deleteParagraphBullets": { + "description": "Deletes bullets from paragraphs.", + "$ref": "DeleteParagraphBulletsRequest" } }, - "id": "Request" + "id": "Request", + "description": "A single kind of update to apply to a presentation.", + "type": "object" }, "UpdateImagePropertiesRequest": { "description": "Update the properties of an Image.", "type": "object", "properties": { "fields": { - "type": "string", "format": "google-fieldmask", - "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." + "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.", + "type": "string" }, "imageProperties": { - "$ref": "ImageProperties", - "description": "The image properties to update." + "description": "The image properties to update.", + "$ref": "ImageProperties" }, "objectId": { "description": "The object ID of the image the updates are applied to.", @@ -1102,35 +906,62 @@ "id": "UpdateImagePropertiesRequest" }, "ParagraphStyle": { - "type": "object", "properties": { - "indentEnd": { - "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.", - "$ref": "Dimension" + "spaceBelow": { + "$ref": "Dimension", + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." }, - "spacingMode": { + "direction": { "enum": [ - "SPACING_MODE_UNSPECIFIED", - "NEVER_COLLAPSE", - "COLLAPSE_LISTS" + "TEXT_DIRECTION_UNSPECIFIED", + "LEFT_TO_RIGHT", + "RIGHT_TO_LEFT" ], - "description": "The spacing mode for the paragraph.", + "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited.", "type": "string", + "enumDescriptions": [ + "The text direction is inherited from the parent.", + "The text goes from left to right.", + "The text goes from right to left." + ] + }, + "spacingMode": { "enumDescriptions": [ "The spacing mode is inherited from the parent.", "Paragraph spacing is always rendered.", "Paragraph spacing is skipped between list elements." - ] + ], + "enum": [ + "SPACING_MODE_UNSPECIFIED", + "NEVER_COLLAPSE", + "COLLAPSE_LISTS" + ], + "description": "The spacing mode for the paragraph.", + "type": "string" }, - "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." + "indentEnd": { + "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.", + "$ref": "Dimension" }, - "spaceAbove": { + "indentStart": { "$ref": "Dimension", - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." + "description": "The amount indentation for the paragraph on the side that corresponds to\nthe start of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent." + }, + "spaceAbove": { + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent.", + "$ref": "Dimension" + }, + "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": { + "format": "float", + "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.", + "type": "number" }, "alignment": { + "type": "string", "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.", @@ -1145,39 +976,12 @@ "END", "JUSTIFIED" ], - "description": "The text alignment for this paragraph.", - "type": "string" - }, - "lineSpacing": { - "format": "float", - "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.", - "type": "number" - }, - "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" - }, - "spaceBelow": { - "$ref": "Dimension", - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." - }, - "direction": { - "enum": [ - "TEXT_DIRECTION_UNSPECIFIED", - "LEFT_TO_RIGHT", - "RIGHT_TO_LEFT" - ], - "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited.", - "type": "string", - "enumDescriptions": [ - "The text direction is inherited from the parent.", - "The text goes from left to right.", - "The text goes from right to left." - ] + "description": "The text alignment for this paragraph." } }, "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." + "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" }, "ReplaceAllShapesWithSheetsChartResponse": { "description": "The result of replacing shapes with a Google Sheets chart.", @@ -1192,21 +996,23 @@ "id": "ReplaceAllShapesWithSheetsChartResponse" }, "TableCellProperties": { - "description": "The properties of the TableCell.", - "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." } }, - "id": "TableCellProperties" + "id": "TableCellProperties", + "description": "The properties of the TableCell.", + "type": "object" }, "Outline": { + "id": "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": { "propertyState": { + "type": "string", "enumDescriptions": [ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", @@ -1217,12 +1023,11 @@ "NOT_RENDERED", "INHERIT" ], - "description": "The outline property state.\n\nUpdating the the outline on a page element will implicitly update this\nfield to`RENDERED`, unless another value is specified in the same request.\nTo have 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" + "description": "The outline property state.\n\nUpdating the the outline on a page element will implicitly update this\nfield to`RENDERED`, unless another value is specified in the same request.\nTo have no outline on a page element, set this field to `NOT_RENDERED`. In\nthis case, any other outline fields set in the same request will be\nignored." }, "outlineFill": { - "description": "The fill of the outline.", - "$ref": "OutlineFill" + "$ref": "OutlineFill", + "description": "The fill of the outline." }, "weight": { "$ref": "Dimension", @@ -1250,11 +1055,9 @@ ], "description": "The dash style of the outline." } - }, - "id": "Outline" + } }, "RefreshSheetsChartRequest": { - "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", "properties": { @@ -1262,21 +1065,21 @@ "description": "The object ID of the chart to refresh.", "type": "string" } - } + }, + "id": "RefreshSheetsChartRequest" }, "TableColumnProperties": { - "description": "Properties of each column in a table.", - "type": "object", "properties": { "columnWidth": { - "$ref": "Dimension", - "description": "Width of a column." + "description": "Width of a column.", + "$ref": "Dimension" } }, - "id": "TableColumnProperties" + "id": "TableColumnProperties", + "description": "Properties of each column in a table.", + "type": "object" }, "ShapeProperties": { - "id": "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": { @@ -1289,17 +1092,17 @@ "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." }, "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." + "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" }, "link": { - "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders.", - "$ref": "Link" + "$ref": "Link", + "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders." } - } + }, + "id": "ShapeProperties" }, "NotesProperties": { - "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.", "type": "object", "properties": { "speakerNotesObjectId": { @@ -1307,7 +1110,8 @@ "type": "string" } }, - "id": "NotesProperties" + "id": "NotesProperties", + "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES." }, "TableRow": { "description": "Properties and contents of each row in a table.", @@ -1328,8 +1132,6 @@ "id": "TableRow" }, "UpdateTableCellPropertiesRequest": { - "id": "UpdateTableCellPropertiesRequest", - "description": "Update the properties of a TableCell.", "type": "object", "properties": { "fields": { @@ -1349,14 +1151,22 @@ "$ref": "TableCellProperties", "description": "The table cell properties to update." } - } + }, + "id": "UpdateTableCellPropertiesRequest", + "description": "Update the properties of a TableCell." }, "CreateSlideRequest": { - "type": "object", "properties": { + "placeholderIdMappings": { + "description": "An optional list of object ID mappings from the placeholder(s) on the layout to the placeholder(s)\nthat will be created on the new slide from that specified layout. Can only\nbe used when `slide_layout_reference` is specified.", + "items": { + "$ref": "LayoutPlaceholderIdMapping" + }, + "type": "array" + }, "slideLayoutReference": { - "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`.", - "$ref": "LayoutReference" + "$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.", @@ -1366,58 +1176,53 @@ "format": "int32", "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.", "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.", - "items": { - "$ref": "LayoutPlaceholderIdMapping" - }, - "type": "array" } }, "id": "CreateSlideRequest", - "description": "Creates a new slide." + "description": "Creates a new slide.", + "type": "object" }, "BatchUpdatePresentationRequest": { + "description": "Request message for PresentationsService.BatchUpdatePresentation.", + "type": "object", "properties": { + "writeControl": { + "description": "Provides control over how write requests are executed.", + "$ref": "WriteControl" + }, "requests": { "description": "A list of updates to apply to the presentation.", "items": { "$ref": "Request" }, "type": "array" - }, - "writeControl": { - "description": "Provides control over how write requests are executed.", - "$ref": "WriteControl" } }, - "id": "BatchUpdatePresentationRequest", - "description": "Request message for PresentationsService.BatchUpdatePresentation.", - "type": "object" + "id": "BatchUpdatePresentationRequest" }, "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": { - "lists": { - "type": "object", - "additionalProperties": { - "$ref": "List" - }, - "description": "The bulleted lists contained in this text, keyed by list ID." - }, "textElements": { + "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.", "items": { "$ref": "TextElement" }, - "type": "array", - "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only." + "type": "array" + }, + "lists": { + "additionalProperties": { + "$ref": "List" + }, + "description": "The bulleted lists contained in this text, keyed by list ID.", + "type": "object" } }, "id": "TextContent" }, "CreateSheetsChartResponse": { + "description": "The result of creating an embedded Google Sheets chart.", "type": "object", "properties": { "objectId": { @@ -1425,66 +1230,62 @@ "type": "string" } }, - "id": "CreateSheetsChartResponse", - "description": "The result of creating an embedded Google Sheets chart." + "id": "CreateSheetsChartResponse" }, "WriteControl": { + "description": "Provides control over how write requests are executed.", + "type": "object", "properties": { "requiredRevisionId": { "description": "The revision ID of the presentation required for the write request. If\nspecified and the `required_revision_id` doesn't exactly match the\npresentation's current `revision_id`, the request will not be processed and\nwill return a 400 bad request error.", "type": "string" } }, - "id": "WriteControl", - "description": "Provides control over how write requests are executed.", - "type": "object" + "id": "WriteControl" }, "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", "properties": { "textRange": { - "$ref": "Range", - "description": "The range of text to delete bullets from, based on TextElement indexes." + "description": "The range of text to delete bullets from, based on TextElement indexes.", + "$ref": "Range" }, "objectId": { - "type": "string", - "description": "The object ID of the shape or table containing the text to delete bullets\nfrom." + "description": "The object ID of the shape or table containing the text to delete bullets\nfrom.", + "type": "string" }, "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" + "$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": "DeleteParagraphBulletsRequest" + "id": "DeleteParagraphBulletsRequest", + "description": "Deletes bullets from all of the paragraphs that overlap with the given text\nindex range.\n\nThe nesting level of each paragraph will be visually preserved by adding\nindent to the start of the corresponding paragraph.", + "type": "object" }, "ParagraphMarker": { + "description": "A TextElement kind that represents the beginning of a new paragraph.", "type": "object", "properties": { - "style": { - "$ref": "ParagraphStyle", - "description": "The paragraph's style" - }, "bullet": { "$ref": "Bullet", "description": "The bullet for this paragraph. If not present, the paragraph does not\nbelong to a list." + }, + "style": { + "description": "The paragraph's style", + "$ref": "ParagraphStyle" } }, - "id": "ParagraphMarker", - "description": "A TextElement kind that represents the beginning of a new paragraph." + "id": "ParagraphMarker" }, "InsertTableColumnsRequest": { + "id": "InsertTableColumnsRequest", "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column.", "type": "object", "properties": { - "tableObjectId": { - "description": "The table to insert columns into.", - "type": "string" - }, "number": { - "type": "integer", "format": "int32", - "description": "The number of columns to be inserted. Maximum 20 per request." + "description": "The number of columns to be inserted. Maximum 20 per request.", + "type": "integer" }, "cellLocation": { "$ref": "TableCellLocation", @@ -1493,9 +1294,12 @@ "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": "InsertTableColumnsRequest" + } }, "Thumbnail": { "description": "The thumbnail of a page.", @@ -1519,40 +1323,40 @@ "id": "Thumbnail" }, "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 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" }, "layoutPlaceholder": { - "$ref": "Placeholder", - "description": "The placeholder on a layout that will be applied to a slide. Only type and index are needed. For example, a\npredefined `TITLE_AND_BODY` layout may usually have a TITLE placeholder\nwith index 0 and a BODY placeholder with index 0." + "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" }, "layoutPlaceholderObjectId": { "description": "The object ID of the placeholder on a layout that will be applied\nto a slide.", "type": "string" } }, - "id": "LayoutPlaceholderIdMapping", - "description": "The user-specified ID mapping for a placeholder that will be created on a\nslide from a specified layout.", - "type": "object" + "id": "LayoutPlaceholderIdMapping" }, "UpdateShapePropertiesRequest": { "description": "Update the properties of a Shape.", "type": "object", "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, "objectId": { "description": "The object ID of the shape the updates are applied to.", "type": "string" }, "shapeProperties": { - "description": "The shape properties to update.", - "$ref": "ShapeProperties" + "$ref": "ShapeProperties", + "description": "The shape properties to update." + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" } }, "id": "UpdateShapePropertiesRequest" @@ -1562,45 +1366,24 @@ "type": "object", "properties": { "renderedText": { - "description": "The text rendered as word art.", - "type": "string" + "type": "string", + "description": "The text rendered as word art." } }, "id": "WordArt" }, "Recolor": { - "id": "Recolor", "description": "A recolor effect applied on an image.", "type": "object", "properties": { + "recolorStops": { + "description": "The recolor effect is represented by a gradient, which is a list of color\nstops.\n\nThe colors in the gradient will replace the corresponding colors at\nthe same position in the color palette and apply to the image. This\nproperty is read-only.", + "items": { + "$ref": "ColorStop" + }, + "type": "array" + }, "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", @@ -1629,16 +1412,37 @@ "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" - }, - "recolorStops": { - "description": "The recolor effect is represented by a gradient, which is a list of color\nstops.\n\nThe colors in the gradient will replace the corresponding colors at\nthe same position in the color palette and apply to the image. This\nproperty is read-only.", - "items": { - "$ref": "ColorStop" - }, - "type": "array" + "type": "string", + "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." + ] } - } + }, + "id": "Recolor" }, "Link": { "description": "A hypertext link.", @@ -1654,6 +1458,8 @@ "type": "integer" }, "relativeLink": { + "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.", @@ -1667,9 +1473,7 @@ "PREVIOUS_SLIDE", "FIRST_SLIDE", "LAST_SLIDE" - ], - "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.", - "type": "string" + ] }, "url": { "description": "If set, indicates this is a link to the external web page at this URL.", @@ -1679,9 +1483,12 @@ "id": "Link" }, "RgbColor": { - "description": "An RGB color.", - "type": "object", "properties": { + "red": { + "format": "float", + "description": "The red component of the color, from 0.0 to 1.0.", + "type": "number" + }, "blue": { "format": "float", "description": "The blue component of the color, from 0.0 to 1.0.", @@ -1691,216 +1498,67 @@ "format": "float", "description": "The green component of the color, from 0.0 to 1.0.", "type": "number" - }, - "red": { - "format": "float", - "description": "The red component of the color, from 0.0 to 1.0.", - "type": "number" } }, - "id": "RgbColor" + "id": "RgbColor", + "description": "An RGB color.", + "type": "object" }, "CreateShapeResponse": { - "description": "The result of creating a shape.", - "type": "object", "properties": { "objectId": { "description": "The object ID of the created shape.", "type": "string" } }, - "id": "CreateShapeResponse" + "id": "CreateShapeResponse", + "description": "The result of creating a shape.", + "type": "object" }, "CreateLineRequest": { - "description": "Creates a line.", - "type": "object", "properties": { "objectId": { - "type": "string", - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated." + "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", + "type": "string" }, "elementProperties": { "$ref": "PageElementProperties", "description": "The element properties for the line." }, "lineCategory": { - "enumDescriptions": [ - "Straight connectors, including straight connector 1. The is the default\ncategory when one is not specified.", - "Bent connectors, including bent connector 2 to 5.", - "Curved connectors, including curved connector 2 to 5." - ], "enum": [ "STRAIGHT", "BENT", "CURVED" ], "description": "The category of line to be created.", - "type": "string" + "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" + "id": "CreateLineRequest", + "description": "Creates a line.", + "type": "object" }, "CreateSlideResponse": { + "type": "object", "properties": { "objectId": { - "description": "The object ID of the created slide.", - "type": "string" + "type": "string", + "description": "The object ID of the created slide." } }, "id": "CreateSlideResponse", - "description": "The result of creating a slide.", - "type": "object" + "description": "The result of creating a slide." }, "CreateShapeRequest": { - "description": "Creates a new shape.", "type": "object", "properties": { "shapeType": { - "enum": [ - "TYPE_UNSPECIFIED", - "TEXT_BOX", - "RECTANGLE", - "ROUND_RECTANGLE", - "ELLIPSE", - "ARC", - "BENT_ARROW", - "BENT_UP_ARROW", - "BEVEL", - "BLOCK_ARC", - "BRACE_PAIR", - "BRACKET_PAIR", - "CAN", - "CHEVRON", - "CHORD", - "CLOUD", - "CORNER", - "CUBE", - "CURVED_DOWN_ARROW", - "CURVED_LEFT_ARROW", - "CURVED_RIGHT_ARROW", - "CURVED_UP_ARROW", - "DECAGON", - "DIAGONAL_STRIPE", - "DIAMOND", - "DODECAGON", - "DONUT", - "DOUBLE_WAVE", - "DOWN_ARROW", - "DOWN_ARROW_CALLOUT", - "FOLDED_CORNER", - "FRAME", - "HALF_FRAME", - "HEART", - "HEPTAGON", - "HEXAGON", - "HOME_PLATE", - "HORIZONTAL_SCROLL", - "IRREGULAR_SEAL_1", - "IRREGULAR_SEAL_2", - "LEFT_ARROW", - "LEFT_ARROW_CALLOUT", - "LEFT_BRACE", - "LEFT_BRACKET", - "LEFT_RIGHT_ARROW", - "LEFT_RIGHT_ARROW_CALLOUT", - "LEFT_RIGHT_UP_ARROW", - "LEFT_UP_ARROW", - "LIGHTNING_BOLT", - "MATH_DIVIDE", - "MATH_EQUAL", - "MATH_MINUS", - "MATH_MULTIPLY", - "MATH_NOT_EQUAL", - "MATH_PLUS", - "MOON", - "NO_SMOKING", - "NOTCHED_RIGHT_ARROW", - "OCTAGON", - "PARALLELOGRAM", - "PENTAGON", - "PIE", - "PLAQUE", - "PLUS", - "QUAD_ARROW", - "QUAD_ARROW_CALLOUT", - "RIBBON", - "RIBBON_2", - "RIGHT_ARROW", - "RIGHT_ARROW_CALLOUT", - "RIGHT_BRACE", - "RIGHT_BRACKET", - "ROUND_1_RECTANGLE", - "ROUND_2_DIAGONAL_RECTANGLE", - "ROUND_2_SAME_RECTANGLE", - "RIGHT_TRIANGLE", - "SMILEY_FACE", - "SNIP_1_RECTANGLE", - "SNIP_2_DIAGONAL_RECTANGLE", - "SNIP_2_SAME_RECTANGLE", - "SNIP_ROUND_RECTANGLE", - "STAR_10", - "STAR_12", - "STAR_16", - "STAR_24", - "STAR_32", - "STAR_4", - "STAR_5", - "STAR_6", - "STAR_7", - "STAR_8", - "STRIPED_RIGHT_ARROW", - "SUN", - "TRAPEZOID", - "TRIANGLE", - "UP_ARROW", - "UP_ARROW_CALLOUT", - "UP_DOWN_ARROW", - "UTURN_ARROW", - "VERTICAL_SCROLL", - "WAVE", - "WEDGE_ELLIPSE_CALLOUT", - "WEDGE_RECTANGLE_CALLOUT", - "WEDGE_ROUND_RECTANGLE_CALLOUT", - "FLOW_CHART_ALTERNATE_PROCESS", - "FLOW_CHART_COLLATE", - "FLOW_CHART_CONNECTOR", - "FLOW_CHART_DECISION", - "FLOW_CHART_DELAY", - "FLOW_CHART_DISPLAY", - "FLOW_CHART_DOCUMENT", - "FLOW_CHART_EXTRACT", - "FLOW_CHART_INPUT_OUTPUT", - "FLOW_CHART_INTERNAL_STORAGE", - "FLOW_CHART_MAGNETIC_DISK", - "FLOW_CHART_MAGNETIC_DRUM", - "FLOW_CHART_MAGNETIC_TAPE", - "FLOW_CHART_MANUAL_INPUT", - "FLOW_CHART_MANUAL_OPERATION", - "FLOW_CHART_MERGE", - "FLOW_CHART_MULTIDOCUMENT", - "FLOW_CHART_OFFLINE_STORAGE", - "FLOW_CHART_OFFPAGE_CONNECTOR", - "FLOW_CHART_ONLINE_STORAGE", - "FLOW_CHART_OR", - "FLOW_CHART_PREDEFINED_PROCESS", - "FLOW_CHART_PREPARATION", - "FLOW_CHART_PROCESS", - "FLOW_CHART_PUNCHED_CARD", - "FLOW_CHART_PUNCHED_TAPE", - "FLOW_CHART_SORT", - "FLOW_CHART_SUMMING_JUNCTION", - "FLOW_CHART_TERMINATOR", - "ARROW_EAST", - "ARROW_NORTH_EAST", - "ARROW_NORTH", - "SPEECH", - "STARBURST", - "TEARDROP", - "ELLIPSE_RIBBON", - "ELLIPSE_RIBBON_2", - "CLOUD_CALLOUT", - "CUSTOM" - ], "description": "The shape type.", "type": "string", "enumDescriptions": [ @@ -2047,113 +1705,255 @@ "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", "Custom shape." - ] - }, - "objectId": { - "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\nIf empty, a unique identifier will be generated.", - "type": "string" - }, - "elementProperties": { - "description": "The element properties for the shape.", - "$ref": "PageElementProperties" - } - }, - "id": "CreateShapeRequest" - }, - "Video": { - "description": "A PageElement kind representing a\nvideo.", - "type": "object", - "properties": { - "source": { - "type": "string", - "enumDescriptions": [ - "The video source is unspecified.", - "The video source is YouTube." ], "enum": [ - "SOURCE_UNSPECIFIED", - "YOUTUBE" - ], - "description": "The video source." - }, - "id": { - "description": "The video source's unique identifier for this video.", - "type": "string" - }, - "url": { - "description": "An URL to a video. The URL is valid as long as the source video\nexists and sharing settings do not change.", - "type": "string" - }, - "videoProperties": { - "$ref": "VideoProperties", - "description": "The properties of the video." - } - }, - "id": "Video" - }, - "PageProperties": { - "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties.", - "type": "object", - "properties": { - "pageBackgroundFill": { - "$ref": "PageBackgroundFill", - "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor." - }, - "colorScheme": { - "$ref": "ColorScheme", - "description": "The color scheme of the page. If unset, the color scheme is inherited from\na parent page. If the page has no parent, the color scheme uses a default\nSlides color scheme. This field is read-only." - } - }, - "id": "PageProperties" - }, - "TableCell": { - "description": "Properties and contents of each table cell.", - "type": "object", - "properties": { - "tableCellProperties": { - "description": "The properties of the table cell.", - "$ref": "TableCellProperties" - }, - "rowSpan": { - "format": "int32", - "description": "Row span of the cell.", - "type": "integer" - }, - "location": { - "description": "The location of the cell within the table.", - "$ref": "TableCellLocation" - }, - "columnSpan": { - "format": "int32", - "description": "Column span of the cell.", - "type": "integer" - }, - "text": { - "$ref": "TextContent", - "description": "The text content of the cell." - } - }, - "id": "TableCell" - }, - "NestingLevel": { - "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", - "type": "object", - "properties": { - "bulletStyle": { - "$ref": "TextStyle", - "description": "The style of a bullet at this level of nesting." - } - }, - "id": "NestingLevel" + "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" + ] + }, + "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" + }, + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the shape." + } + }, + "id": "CreateShapeRequest", + "description": "Creates a new shape." + }, + "Video": { + "description": "A PageElement kind representing a\nvideo.", + "type": "object", + "properties": { + "source": { + "enumDescriptions": [ + "The video source is unspecified.", + "The video source is YouTube." + ], + "enum": [ + "SOURCE_UNSPECIFIED", + "YOUTUBE" + ], + "description": "The video source.", + "type": "string" + }, + "id": { + "type": "string", + "description": "The video source's unique identifier for this video." + }, + "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" + }, + "videoProperties": { + "$ref": "VideoProperties", + "description": "The properties of the video." + } + }, + "id": "Video" + }, + "PageProperties": { + "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties.", + "type": "object", + "properties": { + "colorScheme": { + "$ref": "ColorScheme", + "description": "The color scheme of the page. If unset, the color scheme is inherited from\na parent page. If the page has no parent, the color scheme uses a default\nSlides color scheme. This field is read-only." + }, + "pageBackgroundFill": { + "$ref": "PageBackgroundFill", + "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor." + } + }, + "id": "PageProperties" + }, + "NestingLevel": { + "properties": { + "bulletStyle": { + "description": "The style of a bullet at this level of nesting.", + "$ref": "TextStyle" + } + }, + "id": "NestingLevel", + "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", + "type": "object" + }, + "TableCell": { + "description": "Properties and contents of each table cell.", + "type": "object", + "properties": { + "rowSpan": { + "format": "int32", + "description": "Row span of the cell.", + "type": "integer" + }, + "location": { + "$ref": "TableCellLocation", + "description": "The location of the cell within the table." + }, + "columnSpan": { + "format": "int32", + "description": "Column span of the cell.", + "type": "integer" + }, + "text": { + "description": "The text content of the cell.", + "$ref": "TextContent" + }, + "tableCellProperties": { + "$ref": "TableCellProperties", + "description": "The properties of the table cell." + } + }, + "id": "TableCell" }, "UpdateLinePropertiesRequest": { "description": "Updates the properties of a Line.", "type": "object", "properties": { - "lineProperties": { - "description": "The line properties to update.", - "$ref": "LineProperties" - }, "fields": { "format": "google-fieldmask", "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.", @@ -2162,6 +1962,10 @@ "objectId": { "description": "The object ID of the line the update is applied to.", "type": "string" + }, + "lineProperties": { + "description": "The line properties to update.", + "$ref": "LineProperties" } }, "id": "UpdateLinePropertiesRequest" @@ -2170,8 +1974,11 @@ "description": "The table cell background fill.", "type": "object", "properties": { + "solidFill": { + "description": "Solid color fill.", + "$ref": "SolidFill" + }, "propertyState": { - "type": "string", "enumDescriptions": [ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", @@ -2182,38 +1989,32 @@ "NOT_RENDERED", "INHERIT" ], - "description": "The background fill property state.\n\nUpdating the 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." - }, - "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." + "description": "The background fill property state.\n\nUpdating the 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" }, "UpdateSlidesPositionRequest": { - "description": "Updates the position of slides in the presentation.", - "type": "object", "properties": { + "insertionIndex": { + "format": "int32", + "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.", + "type": "integer" + }, "slideObjectIds": { "description": "The IDs of the slides in the presentation that should be moved.\nThe slides in this list must be in existing presentation order, without\nduplicates.", "items": { "type": "string" }, - "type": "array" - }, - "insertionIndex": { - "format": "int32", - "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.", - "type": "integer" + "type": "array" } }, - "id": "UpdateSlidesPositionRequest" + "id": "UpdateSlidesPositionRequest", + "description": "Updates the position of slides in the presentation.", + "type": "object" }, "UpdatePagePropertiesRequest": { - "id": "UpdatePagePropertiesRequest", - "description": "Updates the properties of a Page.", - "type": "object", "properties": { "fields": { "format": "google-fieldmask", @@ -2221,25 +2022,28 @@ "type": "string" }, "pageProperties": { - "description": "The page properties to update.", - "$ref": "PageProperties" + "$ref": "PageProperties", + "description": "The page properties to update." }, "objectId": { "description": "The object ID of the page the update is applied to.", "type": "string" } - } + }, + "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.", "items": { "$ref": "PageElement" }, - "type": "array" + "type": "array", + "description": "The collection of elements in the group. The minimum size of a group is 2." } }, "id": "Group" @@ -2248,26 +2052,12 @@ "description": "The placeholder information that uniquely identifies a placeholder shape.", "type": "object", "properties": { + "index": { + "format": "int32", + "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values.", + "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": [ @@ -2288,39 +2078,54 @@ "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" ] }, "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": { - "format": "int32", - "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values.", - "type": "integer" } }, "id": "Placeholder" }, "DuplicateObjectRequest": { + "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": { "objectIds": { - "description": "The object being duplicated may contain other objects, for example when\nduplicating a slide or a group page element. This map defines how the IDs\nof duplicated objects are generated: the keys are the IDs of the original\nobjects and its values are the IDs that will be assigned to the\ncorresponding duplicate object. The ID of the source object's duplicate\nmay be specified in this map as well, using the same value of the\n`object_id` field as a key and the newly desired ID as the value.\n\nAll keys must correspond to existing IDs in the presentation. All values\nmust be unique in the presentation and must start with an alphanumeric\ncharacter or an underscore (matches regex `[a-zA-Z0-9_]`); remaining\ncharacters may include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or\ngreater than 50.\n\nIf any IDs of source objects are omitted from the map, a new random ID will\nbe assigned. If the map is empty or unset, all duplicate objects will\nreceive a new random ID.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "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" }, "objectId": { "description": "The ID of the object to duplicate.", "type": "string" } - }, - "id": "DuplicateObjectRequest" + } }, "ReplaceAllTextRequest": { + "type": "object", "properties": { "containsText": { "$ref": "SubstringMatchCriteria", @@ -2339,21 +2144,26 @@ } }, "id": "ReplaceAllTextRequest", - "description": "Replaces all instances of text matching a criteria with replace text.", - "type": "object" + "description": "Replaces all instances of text matching a criteria with replace text." }, "Page": { + "description": "A page in a presentation.", "type": "object", "properties": { "layoutProperties": { - "description": "Layout specific properties. Only set if page_type = LAYOUT.", - "$ref": "LayoutProperties" + "$ref": "LayoutProperties", + "description": "Layout specific properties. Only set if page_type = LAYOUT." }, - "notesProperties": { - "description": "Notes specific properties. Only set if page_type = NOTES.", - "$ref": "NotesProperties" + "pageElements": { + "description": "The page elements rendered on the page.", + "items": { + "$ref": "PageElement" + }, + "type": "array" }, "pageType": { + "description": "The type of the page.", + "type": "string", "enumDescriptions": [ "A slide page.", "A master slide page.", @@ -2367,51 +2177,41 @@ "LAYOUT", "NOTES", "NOTES_MASTER" - ], - "description": "The type of the page.", - "type": "string" - }, - "pageElements": { - "description": "The page elements rendered on the page.", - "items": { - "$ref": "PageElement" - }, - "type": "array" + ] }, - "pageProperties": { - "$ref": "PageProperties", - "description": "The properties of the page." + "notesProperties": { + "$ref": "NotesProperties", + "description": "Notes specific properties. Only set if page_type = NOTES." }, "slideProperties": { - "$ref": "SlideProperties", - "description": "Slide specific properties. Only set if page_type = SLIDE." + "description": "Slide specific properties. Only set if page_type = SLIDE.", + "$ref": "SlideProperties" + }, + "pageProperties": { + "description": "The properties of the page.", + "$ref": "PageProperties" }, "masterProperties": { "description": "Master specific properties. Only set if page_type = MASTER.", "$ref": "MasterProperties" }, "objectId": { - "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.", - "type": "string" + "type": "string", + "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement 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" } }, - "id": "Page", - "description": "A page in a presentation." + "id": "Page" }, "ShapeBackgroundFill": { + "id": "ShapeBackgroundFill", "description": "The shape background fill.", "type": "object", "properties": { - "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." - }, "propertyState": { - "type": "string", "enumDescriptions": [ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.", "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.", @@ -2422,13 +2222,16 @@ "NOT_RENDERED", "INHERIT" ], - "description": "The background fill property state.\n\nUpdating the 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." + "description": "The background fill property state.\n\nUpdating the 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" + }, + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." } - }, - "id": "ShapeBackgroundFill" + } }, "CropProperties": { - "type": "object", "properties": { "bottomOffset": { "format": "float", @@ -2457,12 +2260,30 @@ } }, "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." + "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": { + "pageObjectIds": { + "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", + "items": { + "type": "string" + }, + "type": "array" + }, + "chartId": { + "format": "int32", + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", + "type": "integer" + }, + "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" + }, "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.", @@ -2478,35 +2299,13 @@ "spreadsheetId": { "description": "The ID of the Google Sheets spreadsheet that contains the chart.", "type": "string" - }, - "pageObjectIds": { - "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.", - "items": { - "type": "string" - }, - "type": "array" - }, - "chartId": { - "type": "integer", - "format": "int32", - "description": "The ID of the specific chart in the Google Sheets spreadsheet." - }, - "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." } - }, - "id": "ReplaceAllShapesWithSheetsChartRequest" + } }, "Range": { + "type": "object", "properties": { "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", @@ -2514,12 +2313,18 @@ "ALL" ], "description": "The type of range.", - "type": "string" + "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." + ] }, "endIndex": { - "type": "integer", "format": "int32", - "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges." + "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.", + "type": "integer" }, "startIndex": { "format": "int32", @@ -2528,12 +2333,9 @@ } }, "id": "Range", - "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.", - "type": "object" + "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext." }, "ColorStop": { - "description": "A color and position in a gradient band.", - "type": "object", "properties": { "position": { "format": "float", @@ -2550,15 +2352,16 @@ "description": "The color of the gradient stop." } }, - "id": "ColorStop" + "id": "ColorStop", + "description": "A color and position in a gradient band.", + "type": "object" }, "CreateVideoRequest": { + "id": "CreateVideoRequest", "description": "Creates a video.", "type": "object", "properties": { "source": { - "description": "The video source.", - "type": "string", "enumDescriptions": [ "The video source is unspecified.", "The video source is YouTube." @@ -2566,7 +2369,9 @@ "enum": [ "SOURCE_UNSPECIFIED", "YOUTUBE" - ] + ], + "description": "The video source.", + "type": "string" }, "objectId": { "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.", @@ -2580,25 +2385,27 @@ "description": "The video source's unique identifier for this video.\n\ne.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,\nthe ID is 7U3axjORYZ0.", "type": "string" } - }, - "id": "CreateVideoRequest" + } }, "DuplicateObjectResponse": { - "description": "The response of duplicating an object.", - "type": "object", "properties": { "objectId": { "description": "The ID of the new duplicate object.", "type": "string" } }, - "id": "DuplicateObjectResponse" + "id": "DuplicateObjectResponse", + "description": "The response of duplicating an object.", + "type": "object" }, "ReplaceAllShapesWithImageRequest": { - "id": "ReplaceAllShapesWithImageRequest", "description": "Replaces all shapes that match the given criteria with the provided image.", "type": "object", "properties": { + "imageUrl": { + "type": "string", + "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat." + }, "replaceMethod": { "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.", @@ -2619,36 +2426,49 @@ "type": "array" }, "containsText": { - "$ref": "SubstringMatchCriteria", - "description": "If set, this request will replace all of the shapes that contain the\ngiven text." - }, - "imageUrl": { - "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.", - "type": "string" + "description": "If set, this request will replace all of the shapes that contain the\ngiven text.", + "$ref": "SubstringMatchCriteria" } - } + }, + "id": "ReplaceAllShapesWithImageRequest" }, "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": { + "blurRadius": { + "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes.", + "$ref": "Dimension" + }, "transform": { "$ref": "AffineTransform", "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position." }, "type": { - "enum": [ - "SHADOW_TYPE_UNSPECIFIED", - "OUTER" - ], "description": "The type of the shadow.", "type": "string", "enumDescriptions": [ "Unspecified shadow type.", "Outer shadow." + ], + "enum": [ + "SHADOW_TYPE_UNSPECIFIED", + "OUTER" ] }, "alignment": { + "enum": [ + "RECTANGLE_POSITION_UNSPECIFIED", + "TOP_LEFT", + "TOP_CENTER", + "TOP_RIGHT", + "LEFT_CENTER", + "CENTER", + "RIGHT_CENTER", + "BOTTOM_LEFT", + "BOTTOM_CENTER", + "BOTTOM_RIGHT" + ], "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.", "type": "string", "enumDescriptions": [ @@ -2662,24 +2482,12 @@ "Bottom left.", "Bottom center.", "Bottom right." - ], - "enum": [ - "RECTANGLE_POSITION_UNSPECIFIED", - "TOP_LEFT", - "TOP_CENTER", - "TOP_RIGHT", - "LEFT_CENTER", - "CENTER", - "RIGHT_CENTER", - "BOTTOM_LEFT", - "BOTTOM_CENTER", - "BOTTOM_RIGHT" ] }, "alpha": { - "type": "number", "format": "float", - "description": "The alpha of the shadow's color, from 0.0 to 1.0." + "description": "The alpha of the shadow's color, from 0.0 to 1.0.", + "type": "number" }, "color": { "$ref": "OpaqueColor", @@ -2690,64 +2498,60 @@ "type": "boolean" }, "propertyState": { - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ], "description": "The shadow property state.\n\nUpdating the the shadow on a page element will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no 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", "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" ] - }, - "blurRadius": { - "$ref": "Dimension", - "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes." } }, "id": "Shadow" }, "DeleteTableRowRequest": { + "description": "Deletes a row from a table.", + "type": "object", "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" + "$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" + "id": "DeleteTableRowRequest" }, "Bullet": { - "type": "object", "properties": { + "listId": { + "description": "The ID of the list this paragraph belongs to.", + "type": "string" + }, "glyph": { "description": "The rendered bullet glyph for this paragraph.", "type": "string" }, "nestingLevel": { - "type": "integer", "format": "int32", - "description": "The nesting level of this paragraph in the list." - }, - "bulletStyle": { - "$ref": "TextStyle", - "description": "The paragraph specific text style applied to this bullet." - }, - "listId": { - "description": "The ID of the list this paragraph belongs to.", - "type": "string" + "description": "The nesting level of this paragraph in the list.", + "type": "integer" + }, + "bulletStyle": { + "description": "The paragraph specific text style applied to this bullet.", + "$ref": "TextStyle" } }, "id": "Bullet", - "description": "Describes the bullet of a paragraph." + "description": "Describes the bullet of a paragraph.", + "type": "object" }, "OutlineFill": { "description": "The fill of the outline.", @@ -2760,8 +2564,18 @@ }, "id": "OutlineFill" }, + "CreateLineResponse": { + "properties": { + "objectId": { + "type": "string", + "description": "The object ID of the created line." + } + }, + "id": "CreateLineResponse", + "description": "The result of creating a line.", + "type": "object" + }, "TableCellLocation": { - "id": "TableCellLocation", "description": "A location of a single table cell within a table.", "type": "object", "properties": { @@ -2775,20 +2589,11 @@ "description": "The 0-based row index.", "type": "integer" } - } - }, - "CreateLineResponse": { - "properties": { - "objectId": { - "description": "The object ID of the created line.", - "type": "string" - } }, - "id": "CreateLineResponse", - "description": "The result of creating a line.", - "type": "object" + "id": "TableCellLocation" }, "ReplaceAllTextResponse": { + "id": "ReplaceAllTextResponse", "description": "The result of replacing text.", "type": "object", "properties": { @@ -2797,25 +2602,19 @@ "description": "The number of occurrences changed by replacing all text.", "type": "integer" } - }, - "id": "ReplaceAllTextResponse" + } }, "UpdateParagraphStyleRequest": { "description": "Updates the styling for all of the paragraphs within a Shape or Table that\noverlap with the given text index range.", "type": "object", "properties": { - "fields": { - "format": "google-fieldmask", - "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.", - "type": "string" - }, "textRange": { - "$ref": "Range", - "description": "The range of text containing the paragraph(s) to style." + "description": "The range of text containing the paragraph(s) to style.", + "$ref": "Range" }, "objectId": { - "type": "string", - "description": "The object ID of the shape or table with the text to be styled." + "description": "The object ID of the shape or table with the text to be styled.", + "type": "string" }, "style": { "$ref": "ParagraphStyle", @@ -2824,25 +2623,32 @@ "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" + }, + "fields": { + "format": "google-fieldmask", + "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.", + "type": "string" } }, "id": "UpdateParagraphStyleRequest" }, "ColorScheme": { + "id": "ColorScheme", + "description": "The palette of predefined colors for a page.", "type": "object", "properties": { "colors": { + "description": "The ThemeColorType and corresponding concrete color pairs.", "items": { "$ref": "ThemeColorPair" }, - "type": "array", - "description": "The ThemeColorType and corresponding concrete color pairs." + "type": "array" } - }, - "id": "ColorScheme", - "description": "The palette of predefined colors for a page." + } }, "Shape": { + "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.", + "type": "object", "properties": { "placeholder": { "$ref": "Placeholder", @@ -2853,151 +2659,6 @@ "description": "The text content of the shape." }, "shapeType": { - "enumDescriptions": [ - "The shape type that is not predefined.", - "Text box shape.", - "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", - "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", - "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", - "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", - "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", - "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", - "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", - "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", - "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", - "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", - "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", - "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", - "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", - "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", - "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", - "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", - "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", - "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", - "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", - "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", - "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", - "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", - "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", - "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", - "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", - "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", - "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", - "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", - "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", - "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", - "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", - "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", - "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", - "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", - "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", - "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", - "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", - "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", - "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", - "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", - "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", - "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", - "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", - "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", - "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", - "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", - "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", - "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", - "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", - "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", - "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", - "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", - "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", - "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", - "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", - "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", - "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", - "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", - "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", - "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", - "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", - "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", - "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", - "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", - "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", - "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", - "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", - "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", - "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", - "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", - "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", - "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", - "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", - "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", - "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", - "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", - "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", - "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", - "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", - "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", - "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", - "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", - "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", - "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", - "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", - "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", - "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", - "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", - "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", - "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", - "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", - "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", - "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", - "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", - "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", - "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", - "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", - "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", - "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", - "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", - "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", - "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", - "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", - "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", - "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", - "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", - "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", - "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", - "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", - "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", - "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", - "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", - "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", - "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", - "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", - "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", - "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", - "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", - "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", - "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", - "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", - "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", - "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", - "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", - "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", - "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", - "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", - "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", - "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", - "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", - "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", - "East arrow shape.", - "Northeast arrow shape.", - "North arrow shape.", - "Speech shape.", - "Star burst shape.", - "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", - "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", - "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", - "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", - "Custom shape." - ], "enum": [ "TYPE_UNSPECIFIED", "TEXT_BOX", @@ -3144,19 +2805,161 @@ "CUSTOM" ], "description": "The type of the shape.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "The shape type that is not predefined.", + "Text box shape.", + "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.", + "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'", + "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'", + "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'", + "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'", + "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'", + "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'", + "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'", + "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'", + "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'", + "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'", + "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'", + "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'", + "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'", + "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'", + "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'", + "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'", + "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'", + "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'", + "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'", + "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'", + "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'", + "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'", + "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'", + "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'", + "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'", + "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'", + "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'", + "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'", + "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'", + "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'", + "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'", + "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'", + "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'", + "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'", + "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'", + "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'", + "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'", + "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'", + "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'", + "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'", + "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'", + "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'", + "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'", + "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'", + "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'", + "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'", + "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'", + "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'", + "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'", + "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'", + "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'", + "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'", + "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'", + "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'", + "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'", + "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'", + "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'", + "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'", + "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'", + "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'", + "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'", + "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'", + "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'", + "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'", + "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'", + "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'", + "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'", + "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'", + "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'", + "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'", + "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'", + "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'", + "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'", + "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'", + "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'", + "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'", + "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'", + "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'", + "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'", + "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'", + "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'", + "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'", + "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'", + "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'", + "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'", + "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'", + "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'", + "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'", + "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'", + "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'", + "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'", + "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'", + "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'", + "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'", + "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'", + "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'", + "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'", + "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'", + "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'", + "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'", + "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'", + "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'", + "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'", + "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'", + "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'", + "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'", + "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'", + "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'", + "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'", + "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'", + "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'", + "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'", + "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'", + "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'", + "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'", + "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'", + "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'", + "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'", + "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'", + "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'", + "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'", + "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'", + "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'", + "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'", + "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'", + "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'", + "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'", + "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'", + "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'", + "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'", + "East arrow shape.", + "Northeast arrow shape.", + "North arrow shape.", + "Speech shape.", + "Star burst shape.", + "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'", + "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'", + "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'", + "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'", + "Custom shape." + ] }, "shapeProperties": { "description": "The properties of the shape.", "$ref": "ShapeProperties" } }, - "id": "Shape", - "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.", - "type": "object" + "id": "Shape" }, "Image": { - "description": "A PageElement kind representing an\nimage.", "type": "object", "properties": { "imageProperties": { @@ -3168,7 +2971,32 @@ "type": "string" } }, - "id": "Image" + "id": "Image", + "description": "A PageElement kind representing an\nimage." + }, + "InsertTextRequest": { + "id": "InsertTextRequest", + "description": "Inserts text into a shape or a table cell.", + "type": "object", + "properties": { + "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" + }, + "objectId": { + "description": "The object ID of the shape or table where the text will be inserted.", + "type": "string" + }, + "insertionIndex": { + "format": "int32", + "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.", + "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." + } + } }, "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.", @@ -3194,9 +3022,9 @@ "type": "number" }, "shearX": { + "type": "number", "format": "double", - "description": "The X coordinate shearing element.", - "type": "number" + "description": "The X coordinate shearing element." }, "scaleY": { "format": "double", @@ -3221,44 +3049,15 @@ }, "id": "AffineTransform" }, - "InsertTextRequest": { - "description": "Inserts text into a shape or a table cell.", - "type": "object", - "properties": { - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The optional table cell location if the text is to be inserted into a table\ncell. If present, the object_id must refer to a table." - }, - "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" - }, - "objectId": { - "description": "The object ID of the shape or table where the text will be inserted.", - "type": "string" - }, - "insertionIndex": { - "type": "integer", - "format": "int32", - "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." - } - }, - "id": "InsertTextRequest" - }, "AutoText": { + "description": "A TextElement kind that represents auto text.", "type": "object", "properties": { - "style": { - "description": "The styling applied to this auto text.", - "$ref": "TextStyle" - }, "content": { - "description": "The rendered content of this auto text, if available.", - "type": "string" + "type": "string", + "description": "The rendered content of this auto text, if available." }, "type": { - "description": "The type of this auto text.", - "type": "string", "enumDescriptions": [ "An unspecified autotext type.", "Type for autotext that represents the current slide number." @@ -3266,27 +3065,36 @@ "enum": [ "TYPE_UNSPECIFIED", "SLIDE_NUMBER" - ] + ], + "description": "The type of this auto text.", + "type": "string" + }, + "style": { + "description": "The styling applied to this auto text.", + "$ref": "TextStyle" } }, - "id": "AutoText", - "description": "A TextElement kind that represents auto text." + "id": "AutoText" }, "CreateVideoResponse": { - "description": "The result of creating a video.", - "type": "object", "properties": { "objectId": { "description": "The object ID of the created video.", "type": "string" } }, - "id": "CreateVideoResponse" + "id": "CreateVideoResponse", + "description": "The result of creating a video.", + "type": "object" }, "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." + }, "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." @@ -3294,10 +3102,6 @@ "objectId": { "description": "The object ID of the shape or table from which the text will be deleted.", "type": "string" - }, - "cellLocation": { - "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.", - "$ref": "TableCellLocation" } }, "id": "DeleteTextRequest" @@ -3306,14 +3110,6 @@ "description": "Updates the transform of a page element.", "type": "object", "properties": { - "transform": { - "$ref": "AffineTransform", - "description": "The input transform matrix used to update the page element." - }, - "objectId": { - "description": "The object ID of the page element to update.", - "type": "string" - }, "applyMode": { "enumDescriptions": [ "Unspecified mode.", @@ -3327,6 +3123,14 @@ ], "description": "The apply mode of the transform update.", "type": "string" + }, + "transform": { + "$ref": "AffineTransform", + "description": "The input transform matrix used to update the page element." + }, + "objectId": { + "description": "The object ID of the page element to update.", + "type": "string" } }, "id": "UpdatePageElementTransformRequest" @@ -3336,8 +3140,8 @@ "type": "object", "properties": { "objectId": { - "type": "string", - "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." + "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" @@ -3352,24 +3156,23 @@ "type": "number" }, "unit": { + "enum": [ + "UNIT_UNSPECIFIED", + "EMU", + "PT" + ], "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": { "textRun": { @@ -3377,12 +3180,12 @@ "description": "A TextElement representing a run of text where all of the characters\nin the run have the same TextStyle.\n\nThe `start_index` and `end_index` of TextRuns will always be fully\ncontained in the index range of a single `paragraph_marker` TextElement.\nIn other words, a TextRun will never span multiple paragraphs." }, "autoText": { - "$ref": "AutoText", - "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time." + "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time.", + "$ref": "AutoText" }, "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" + "$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." }, "endIndex": { "format": "int32", @@ -3395,9 +3198,11 @@ "type": "integer" } }, - "id": "TextElement" + "id": "TextElement", + "description": "A TextElement describes the content of a range of indices in the text content\nof a Shape or TableCell." }, "LineFill": { + "description": "The fill of the line.", "type": "object", "properties": { "solidFill": { @@ -3405,10 +3210,10 @@ "description": "Solid color fill." } }, - "id": "LineFill", - "description": "The fill of the line." + "id": "LineFill" }, "VideoProperties": { + "description": "The properties of the Video.", "type": "object", "properties": { "outline": { @@ -3416,17 +3221,11 @@ "description": "The outline of the video. The default outline matches the defaults for new\nvideos created in the Slides editor." } }, - "id": "VideoProperties", - "description": "The properties of the Video." + "id": "VideoProperties" }, "InsertTableRowsRequest": { - "description": "Inserts rows into a table.", "type": "object", "properties": { - "cellLocation": { - "$ref": "TableCellLocation", - "description": "The reference table cell location from which rows will be inserted.\n\nA new row will be inserted above (or below) the row where the reference\ncell is. If the reference cell is a merged cell, a new row will be\ninserted above (or below) the merged cell." - }, "tableObjectId": { "description": "The table to insert rows into.", "type": "string" @@ -3436,21 +3235,20 @@ "type": "boolean" }, "number": { + "type": "integer", "format": "int32", - "description": "The number of rows to be inserted. Maximum 20 per request.", - "type": "integer" + "description": "The number of rows to be inserted. Maximum 20 per request." + }, + "cellLocation": { + "$ref": "TableCellLocation", + "description": "The reference table cell location from which rows will be inserted.\n\nA new row will be inserted above (or below) the row where the reference\ncell is. If the reference cell is a merged cell, a new row will be\ninserted above (or below) the merged cell." } }, - "id": "InsertTableRowsRequest" + "id": "InsertTableRowsRequest", + "description": "Inserts rows into a table." }, "LayoutProperties": { - "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", - "type": "object", "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" @@ -3458,79 +3256,27 @@ "displayName": { "description": "The human-readable name of the layout.", "type": "string" - } - }, - "id": "LayoutProperties" - }, - "Presentation": { - "description": "A Google Slides presentation.", - "type": "object", - "properties": { - "pageSize": { - "$ref": "Size", - "description": "The size of pages in the presentation." - }, - "presentationId": { - "type": "string", - "description": "The ID of the presentation." - }, - "slides": { - "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.", - "items": { - "$ref": "Page" - }, - "type": "array" - }, - "revisionId": { - "description": "The revision ID of the presentation. Can be used in update requests\nto assert that the presentation revision hasn't changed since the last\nread operation. Only populated if the user has edit access to the\npresentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.", - "type": "string" - }, - "notesMaster": { - "$ref": "Page", - "description": "The notes master in the presentation. It serves three purposes:\n\n- Placeholder shapes on a notes master contain the default text styles and\n shape properties of all placeholder shapes on notes pages. Specifically,\n a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a\n `BODY` placeholder shape contains the speaker notes.\n- The notes master page properties define the common page properties\n inherited by all notes pages.\n- Any other shapes on the notes master will appear on all notes pages.\n\nThe notes master is read-only." - }, - "title": { - "description": "The title of the presentation.", - "type": "string" - }, - "layouts": { - "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.", - "items": { - "$ref": "Page" - }, - "type": "array" - }, - "locale": { - "description": "The locale of the presentation, as an IETF BCP 47 language tag.", - "type": "string" }, - "masters": { - "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.", - "items": { - "$ref": "Page" - }, - "type": "array" + "masterObjectId": { + "description": "The object ID of the master that this layout is based on.", + "type": "string" } }, - "id": "Presentation" + "id": "LayoutProperties", + "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", + "type": "object" }, "LineProperties": { "description": "The properties of the Line.\n\nWhen unset, these fields default to values that match the appearance of\nnew lines created in the Slides editor.", "type": "object", "properties": { - "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": { - "$ref": "Link", - "description": "The hyperlink destination of the line. If unset, there is no link." + "description": "The hyperlink destination of the line. If unset, there is no link.", + "$ref": "Link" }, "dashStyle": { + "description": "The dash style of the line.", + "type": "string", "enumDescriptions": [ "Unspecified dash style.", "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.", @@ -3548,11 +3294,41 @@ "DASH_DOT", "LONG_DASH", "LONG_DASH_DOT" - ], - "description": "The dash style of the line.", - "type": "string" + ] }, "startArrow": { + "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." + ], + "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." + }, + "endArrow": { + "description": "The style of the arrow at the end of the line.", + "type": "string", "enumDescriptions": [ "An unspecified arrow style.", "No arrow.", @@ -3578,59 +3354,281 @@ "OPEN_CIRCLE", "OPEN_SQUARE", "OPEN_DIAMOND" + ] + }, + "weight": { + "$ref": "Dimension", + "description": "The thickness of the line." + }, + "lineFill": { + "$ref": "LineFill", + "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor." + } + }, + "id": "LineProperties" + }, + "Presentation": { + "description": "A Google Slides presentation.", + "type": "object", + "properties": { + "slides": { + "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "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." + }, + "layouts": { + "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "title": { + "description": "The title of the presentation.", + "type": "string" + }, + "masters": { + "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.", + "items": { + "$ref": "Page" + }, + "type": "array" + }, + "locale": { + "description": "The locale of the presentation, as an IETF BCP 47 language tag.", + "type": "string" + }, + "pageSize": { + "$ref": "Size", + "description": "The size of pages in the presentation." + }, + "presentationId": { + "description": "The ID of the presentation.", + "type": "string" + } + }, + "id": "Presentation" + }, + "OpaqueColor": { + "type": "object", + "properties": { + "rgbColor": { + "$ref": "RgbColor", + "description": "An opaque RGB color." + }, + "themeColor": { + "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" + ], + "description": "An opaque theme color." + } + }, + "id": "OpaqueColor", + "description": "A themeable solid color value." + }, + "ImageProperties": { + "properties": { + "cropProperties": { + "$ref": "CropProperties", + "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only." + }, + "recolor": { + "$ref": "Recolor", + "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only." + }, + "outline": { + "$ref": "Outline", + "description": "The outline of the image. If not set, the the image has no outline." + }, + "brightness": { + "format": "float", + "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.", + "type": "number" + }, + "transparency": { + "format": "float", + "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.", + "type": "number" + }, + "shadow": { + "$ref": "Shadow", + "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." + }, + "contrast": { + "format": "float", + "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.", + "type": "number" + }, + "link": { + "$ref": "Link", + "description": "The hyperlink destination of the image. If unset, there is no link." + } + }, + "id": "ImageProperties", + "description": "The properties of the Image.", + "type": "object" + }, + "ReplaceAllShapesWithImageResponse": { + "description": "The result of replacing shapes with an image.", + "type": "object", + "properties": { + "occurrencesChanged": { + "type": "integer", + "format": "int32", + "description": "The number of shapes replaced with images." + } + }, + "id": "ReplaceAllShapesWithImageResponse" + }, + "Line": { + "description": "A PageElement kind representing a\nline, curved connector, or bent connector.", + "type": "object", + "properties": { + "lineProperties": { + "$ref": "LineProperties", + "description": "The properties of the line." + }, + "lineType": { + "enum": [ + "TYPE_UNSPECIFIED", + "STRAIGHT_CONNECTOR_1", + "BENT_CONNECTOR_2", + "BENT_CONNECTOR_3", + "BENT_CONNECTOR_4", + "BENT_CONNECTOR_5", + "CURVED_CONNECTOR_2", + "CURVED_CONNECTOR_3", + "CURVED_CONNECTOR_4", + "CURVED_CONNECTOR_5" ], - "description": "The style of the arrow at the beginning of the line.", + "description": "The type of the line.", + "type": "string", + "enumDescriptions": [ + "An unspecified line type.", + "Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType\n'straightConnector1'.", + "Bent connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector2'.", + "Bent connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector3'.", + "Bent connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector4'.", + "Bent connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'bentConnector5'.", + "Curved connector 2 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector2'.", + "Curved connector 3 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector3'.", + "Curved connector 4 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector4'.", + "Curved connector 5 form. Corresponds to ECMA-376 ST_ShapeType\n'curvedConnector5'." + ] + } + }, + "id": "Line" + }, + "CreateSheetsChartRequest": { + "description": "Creates an embedded Google Sheets chart.\n\nNOTE: Chart creation requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.", + "type": "object", + "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" }, - "endArrow": { - "description": "The style of the arrow at the end of the line.", + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the chart.\n\nWhen the aspect ratio of the provided size does not match the chart aspect\nratio, the chart is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation." + }, + "linkingMode": { "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." + "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": [ - "ARROW_STYLE_UNSPECIFIED", - "NONE", - "STEALTH_ARROW", - "FILL_ARROW", - "FILL_CIRCLE", - "FILL_SQUARE", - "FILL_DIAMOND", - "OPEN_ARROW", - "OPEN_CIRCLE", - "OPEN_SQUARE", - "OPEN_DIAMOND" - ] + "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." + }, + "spreadsheetId": { + "description": "The ID of the Google Sheets spreadsheet that contains the chart.", + "type": "string" + }, + "chartId": { + "format": "int32", + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", + "type": "integer" } }, - "id": "LineProperties" + "id": "CreateSheetsChartRequest" + }, + "BatchUpdatePresentationResponse": { + "description": "Response message from a batch update.", + "type": "object", + "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.", + "items": { + "$ref": "Response" + }, + "type": "array" + } + }, + "id": "BatchUpdatePresentationResponse" } }, + "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": "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/spreadsheets.readonly": { "description": "View your Google Spreadsheets" }, @@ -3642,6 +3640,12 @@ }, "https://www.googleapis.com/auth/spreadsheets": { "description": "View and manage your spreadsheets in Google Drive" + }, + "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" } } } @@ -3656,9 +3660,6 @@ "presentations": { "methods": { "get": { - "id": "slides.presentations.get", - "path": "v1/presentations/{+presentationId}", - "description": "Gets the latest version of the specified presentation.", "response": { "$ref": "Presentation" }, @@ -3674,27 +3675,30 @@ ], "parameters": { "presentationId": { + "pattern": "^[^/]+$", "location": "path", "description": "The ID of the presentation to retrieve.", "type": "string", - "required": true, - "pattern": "^[^/]+$" + "required": true } }, - "flatPath": "v1/presentations/{presentationsId}" + "flatPath": "v1/presentations/{presentationsId}", + "id": "slides.presentations.get", + "path": "v1/presentations/{+presentationId}", + "description": "Gets the latest version of the specified presentation." }, "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" - }, + "httpMethod": "POST", "parameterOrder": [ "presentationId" ], - "httpMethod": "POST", + "response": { + "$ref": "BatchUpdatePresentationResponse" + }, "parameters": { "presentationId": { "description": "The presentation to apply the updates to.", @@ -3711,41 +3715,42 @@ "https://www.googleapis.com/auth/spreadsheets.readonly" ], "flatPath": "v1/presentations/{presentationId}:batchUpdate", - "id": "slides.presentations.batchUpdate", - "path": "v1/presentations/{presentationId}:batchUpdate" + "path": "v1/presentations/{presentationId}:batchUpdate", + "id": "slides.presentations.batchUpdate" }, "create": { - "flatPath": "v1/presentations", - "id": "slides.presentations.create", - "path": "v1/presentations", - "request": { - "$ref": "Presentation" - }, - "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.", "response": { "$ref": "Presentation" }, "parameterOrder": [], "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/presentations" ], - "parameters": {} + "flatPath": "v1/presentations", + "id": "slides.presentations.create", + "path": "v1/presentations", + "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.", + "request": { + "$ref": "Presentation" + } } }, "resources": { "pages": { "methods": { - "getThumbnail": { - "httpMethod": "GET", + "get": { + "description": "Gets the latest version of the specified page in the presentation.", + "response": { + "$ref": "Page" + }, "parameterOrder": [ "presentationId", "pageObjectId" ], - "response": { - "$ref": "Thumbnail" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.readonly", @@ -3753,50 +3758,31 @@ "https://www.googleapis.com/auth/presentations.readonly" ], "parameters": { - "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" - }, - "thumbnailProperties.mimeType": { - "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.", - "type": "string" - }, "presentationId": { - "location": "path", "description": "The ID of the presentation to retrieve.", "type": "string", - "required": true + "required": true, + "location": "path" }, "pageObjectId": { "location": "path", - "description": "The object ID of the page whose thumbnail to retrieve.", + "description": "The object ID of the page to retrieve.", "type": "string", "required": true } }, - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "id": "slides.presentations.pages.getThumbnail", - "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image." + "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", + "id": "slides.presentations.pages.get", + "path": "v1/presentations/{presentationId}/pages/{pageObjectId}" }, - "get": { - "description": "Gets the latest version of the specified page in the presentation.", + "getThumbnail": { + "response": { + "$ref": "Thumbnail" + }, "parameterOrder": [ "presentationId", "pageObjectId" ], - "response": { - "$ref": "Page" - }, "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/drive", @@ -3805,22 +3791,40 @@ "https://www.googleapis.com/auth/presentations.readonly" ], "parameters": { - "presentationId": { - "location": "path", - "description": "The ID of the presentation to retrieve.", + "pageObjectId": { + "description": "The object ID of the page whose thumbnail to retrieve.", "type": "string", - "required": true + "required": true, + "location": "path" }, - "pageObjectId": { + "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" + }, + "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" + }, + "presentationId": { "location": "path", - "description": "The object ID of the page to retrieve.", + "description": "The ID of the presentation to retrieve.", "type": "string", "required": true } }, - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", - "id": "slides.presentations.pages.get", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}" + "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." } } } @@ -3828,50 +3832,34 @@ } }, "parameters": { - "alt": { - "enum": [ - "json", - "media", - "proto" - ], + "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": "Data format for response.", - "default": "json" + "description": "API key. 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" }, - "key": { - "description": "API key. 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" + "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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, - "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" }, @@ -3881,22 +3869,28 @@ "type": "string" }, "prettyPrint": { + "location": "query", "description": "Returns response with indentations and line breaks.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" + }, + "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", - "location": "query" + "type": "string" }, - "fields": { + "callback": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "description": "JSONP", "type": "string" }, "$.xgafv": { + "location": "query", "enum": [ "1", "2" @@ -3906,19 +3900,25 @@ "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" } }, "version": "v1", - "baseUrl": "https://slides.googleapis.com/", - "kind": "discovery#restDescription", - "description": "An API for creating and editing Google Slides presentations.", - "servicePath": "", - "basePath": "" + "baseUrl": "https://slides.googleapis.com/" } diff --git a/DiscoveryJson/sourcerepo_v1.json b/DiscoveryJson/sourcerepo_v1.json index 06f71ca446..b21953a59b 100644 --- a/DiscoveryJson/sourcerepo_v1.json +++ b/DiscoveryJson/sourcerepo_v1.json @@ -1,778 +1,778 @@ { - "ownerDomain": "google.com", - "name": "sourcerepo", - "batchPath": "batch", - "title": "Cloud Source Repositories API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "repos": { - "methods": { - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy" - }, - "get": { - "description": "Returns information about a repo.", - "response": { - "$ref": "Repo" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the requested repository. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "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}" - }, - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/repos/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", - "id": "sourcerepo.projects.repos.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": { - "parameters": { - "name": { - "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "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.delete", - "description": "Deletes a repo.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - } - }, - "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" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Resume listing repositories where a prior ListReposResponse\nleft off. This is an opaque token that must be obtained from\na recent, prior ListReposResponse's next_page_token field.", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project ID whose repos should be listed. Values are of the form\n`projects/\u003cproject\u003e`.", - "type": "string", - "required": true - }, - "pageSize": { - "format": "int32", - "description": "Maximum number of repositories to return; between 1 and 500.\nIf not set or zero, defaults to 100 at the server.", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/projects/{projectsId}/repos", - "id": "sourcerepo.projects.repos.list", - "path": "v1/{+name}/repos" - }, - "create": { - "response": { - "$ref": "Repo" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/repos", - "id": "sourcerepo.projects.repos.create", - "path": "v1/{+parent}/repos", - "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": { - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/source.read_only", - "https://www.googleapis.com/auth/source.read_write" - ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy", - "id": "sourcerepo.projects.repos.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } - } - } - } - } - } - }, - "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.", - "default": "true", - "type": "boolean", - "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": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" - }, - "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" - }, - "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": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "location": "query", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://sourcerepo.googleapis.com/", - "description": "Access source code repositories hosted by Google.", - "kind": "discovery#restDescription", - "servicePath": "", - "basePath": "", - "revision": "20170528", - "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", - "id": "sourcerepo:v1", - "discoveryVersion": "v1", "version_module": "True", "schemas": { - "SetIamPolicyRequest": { + "Repo": { "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." + "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" }, - "updateMask": { - "format": "google-fieldmask", - "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.", + "mirrorConfig": { + "$ref": "MirrorConfig", + "description": "How this repository mirrors a repository managed by another service." + }, + "url": { + "description": "URL to clone the repository from Google Cloud Source Repositories.", + "type": "string" + }, + "size": { + "format": "int64", + "description": "The disk usage of the repo, in bytes.\nOnly returned by GetRepo.", "type": "string" } }, - "id": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method." + "id": "Repo", + "description": "A repository (or repo) is a Git repository storing versioned source content." }, - "CloudAuditOptions": { - "description": "Write a Cloud Audit log", + "Condition": { + "description": "A condition to be met.", "type": "object", "properties": { - "logName": { + "value": { + "description": "DEPRECATED. Use 'values' instead.", + "type": "string" + }, + "sys": { "enum": [ - "UNSPECIFIED_LOG_NAME", - "ADMIN_ACTIVITY", - "DATA_ACCESS" + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" ], - "description": "The log_name to populate in the Cloud Audit Record.", + "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", "type": "string", "enumDescriptions": [ - "Default. Should not be used.", - "Corresponds to \"cloudaudit.googleapis.com/activity\"", - "Corresponds to \"cloudaudit.googleapis.com/data_access\"" + "Default non-attribute type", + "Region of the resource", + "Service name", + "Resource name", + "IP address of the caller" + ] + }, + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + }, + "type": "array" + }, + "iam": { + "description": "Trusted attributes supplied by the IAM system.", + "type": "string", + "enumDescriptions": [ + "Default non-attribute.", + "Either principal or (if present) authority selector.", + "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", + "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).\nSee: go/rpc-security-policy-dynamicauth.", + "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." + ], + "enum": [ + "NO_ATTR", + "AUTHORITY", + "ATTRIBUTION", + "APPROVER", + "JUSTIFICATION_TYPE" + ] + }, + "op": { + "enum": [ + "NO_OP", + "EQUALS", + "NOT_EQUALS", + "IN", + "NOT_IN", + "DISCHARGED" + ], + "description": "An operator to apply the subject with.", + "type": "string", + "enumDescriptions": [ + "Default no-op.", + "DEPRECATED. Use IN instead.", + "DEPRECATED. Use NOT_IN instead.", + "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", + "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", + "Subject is discharged" ] + }, + "svc": { + "description": "Trusted attributes discharged by the service.", + "type": "string" } }, - "id": "CloudAuditOptions" + "id": "Condition" }, - "Binding": { - "description": "Associates `members` with a `role`.", + "ListReposResponse": { + "description": "Response for ListRepos. The size is not set in the returned repositories.", "type": "object", "properties": { - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "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" }, - "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", + "repos": { + "description": "The listed repos.", + "items": { + "$ref": "Repo" + }, + "type": "array" + } + }, + "id": "ListReposResponse" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "type": "object", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestIamPermissionsResponse" + }, + "CounterOptions": { + "description": "Options for counters", + "type": "object", + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" + }, + "metric": { + "description": "The metric to update.", + "type": "string" + } + }, + "id": "CounterOptions" + }, + "AuditLogConfig": { + "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", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "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" + ] + } + } + }, + "Rule": { + "properties": { + "notIn": { + "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "type": "string", + "description": "Human-readable description of the rule." + }, + "conditions": { + "items": { + "$ref": "Condition" + }, + "type": "array", + "description": "Additional restrictions that must be met" + }, + "logConfig": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" + }, + "in": { + "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "permissions": { "items": { "type": "string" }, - "type": "array" - } - }, - "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" - }, - "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 webook 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" + "type": "array", + "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs." }, - "url": { - "description": "URL of the main repository at the other hosting service.", - "type": "string" + "action": { + "enum": [ + "NO_ACTION", + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG" + ], + "description": "Required", + "type": "string", + "enumDescriptions": [ + "Default no action.", + "Matching 'Entries' grant access.", + "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' deny access.", + "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' tell IAM.Check callers to generate logs." + ] } }, - "id": "MirrorConfig" + "id": "Rule", + "description": "A rule to be applied in a Policy.", + "type": "object" }, - "Repo": { - "description": "A repository (or repo) is a Git repository storing versioned source content.", - "type": "object", + "LogConfig": { "properties": { - "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": { - "$ref": "MirrorConfig", - "description": "How this repository mirrors a repository managed by another service." + "counter": { + "$ref": "CounterOptions", + "description": "Counter options." }, - "url": { - "description": "URL to clone the repository from Google Cloud Source Repositories.", - "type": "string" + "dataAccess": { + "$ref": "DataAccessOptions", + "description": "Data access options." }, - "size": { - "format": "int64", - "description": "The disk usage of the repo, in bytes.\nOnly returned by GetRepo.", - "type": "string" + "cloudAudit": { + "$ref": "CloudAuditOptions", + "description": "Cloud audit options." } }, - "id": "Repo" + "id": "LogConfig", + "description": "Specifies what kind of log the caller must write", + "type": "object" }, - "TestIamPermissionsResponse": { - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", + "TestIamPermissionsRequest": { "type": "object", "properties": { "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" }, "type": "array" } - } + }, + "id": "TestIamPermissionsRequest", + "description": "Request message for `TestIamPermissions` method." }, - "ListReposResponse": { - "id": "ListReposResponse", - "description": "Response for ListRepos. The size is not set in the returned repositories.", + "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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "repos": { - "description": "The listed repos.", + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "iamOwned": { + "type": "boolean" + }, + "rules": { "items": { - "$ref": "Repo" + "$ref": "Rule" + }, + "type": "array", + "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied." + }, + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" }, "type": "array" }, - "nextPageToken": { - "description": "If non-empty, additional repositories exist within the project. These\ncan be retrieved by including this value in the next ListReposRequest's\npage_token field.", - "type": "string" + "bindings": { + "description": "Associates a list of `members` to a `role`.\nMultiple `bindings` must not be specified for the same `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" } } }, - "Condition": { - "description": "A condition to be met.", + "DataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "type": "object", + "properties": {}, + "id": "DataAccessOptions" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", "type": "object", "properties": { - "sys": { - "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", - "type": "string", - "enumDescriptions": [ - "Default non-attribute type", - "Region of the resource", - "Service name", - "Resource name", - "IP address of the caller" - ], - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" - ] - }, - "value": { - "description": "DEPRECATED. Use 'values' instead.", - "type": "string" - }, - "values": { - "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "exemptedMembers": { "items": { "type": "string" }, "type": "array" }, - "iam": { - "type": "string", - "enumDescriptions": [ - "Default non-attribute.", - "Either principal or (if present) authority selector.", - "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", - "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).\nSee: go/rpc-security-policy-dynamicauth.", - "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." - ], - "enum": [ - "NO_ATTR", - "AUTHORITY", - "ATTRIBUTION", - "APPROVER", - "JUSTIFICATION_TYPE" - ], - "description": "Trusted attributes supplied by the IAM system." - }, - "op": { - "description": "An operator to apply the subject with.", - "type": "string", - "enumDescriptions": [ - "Default no-op.", - "DEPRECATED. Use IN instead.", - "DEPRECATED. Use NOT_IN instead.", - "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", - "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", - "Subject is discharged" - ], - "enum": [ - "NO_OP", - "EQUALS", - "NOT_EQUALS", - "IN", - "NOT_IN", - "DISCHARGED" - ] - }, - "svc": { - "description": "Trusted attributes discharged by the service.", + "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", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" } }, - "id": "Condition" + "id": "AuditConfig" }, - "CounterOptions": { + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", "properties": { - "field": { - "description": "The field value to attribute.", - "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." }, - "metric": { - "description": "The metric to update.", + "updateMask": { + "format": "google-fieldmask", + "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.", "type": "string" } }, - "id": "CounterOptions", - "description": "Options for counters", - "type": "object" + "id": "SetIamPolicyRequest" }, - "AuditLogConfig": { - "type": "object", + "CloudAuditOptions": { "properties": { - "logType": { - "description": "The log type that this config enables.", + "logName": { + "enum": [ + "UNSPECIFIED_LOG_NAME", + "ADMIN_ACTIVITY", + "DATA_ACCESS" + ], + "description": "The log_name to populate in the Cloud Audit Record.", "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" + "Default. Should not be used.", + "Corresponds to \"cloudaudit.googleapis.com/activity\"", + "Corresponds to \"cloudaudit.googleapis.com/data_access\"" ] - }, - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", - "items": { - "type": "string" - }, - "type": "array" } }, - "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." + "id": "CloudAuditOptions", + "description": "Write a Cloud Audit log", + "type": "object" }, - "Rule": { - "id": "Rule", - "description": "A rule to be applied in a Policy.", + "Binding": { + "description": "Associates `members` with a `role`.", "type": "object", "properties": { - "notIn": { - "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", "items": { "type": "string" }, "type": "array" }, - "description": { - "description": "Human-readable description of the rule.", + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" + } + }, + "id": "Binding" + }, + "MirrorConfig": { + "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or BitBucket.", + "type": "object", + "properties": { + "url": { + "type": "string", + "description": "URL of the main repository at the other hosting service." }, - "conditions": { - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - }, - "type": "array" - }, - "logConfig": { - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", - "items": { - "$ref": "LogConfig" - }, - "type": "array" + "webhookId": { + "description": "ID of the webhook listening to updates to trigger mirroring.\nRemoving this webook from the other hosting service will stop\nGoogle Cloud Source Repositories from receiving notifications,\nand thereby disabling mirroring.", + "type": "string" }, - "in": { - "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { - "type": "string" - }, - "type": "array" + "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" + } + }, + "id": "MirrorConfig" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" + } + }, + "icons": { + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + }, + "protocol": "rest", + "canonicalName": "Cloud Source Repositories", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/source.read_write": { + "description": "Manage the contents of your source code repositories" }, - "permissions": { - "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - }, - "type": "array" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "action": { - "enum": [ - "NO_ACTION", - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG" - ], - "description": "Required", - "type": "string", - "enumDescriptions": [ - "Default no action.", - "Matching 'Entries' grant access.", - "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' deny access.", - "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' tell IAM.Check callers to generate logs." - ] + "https://www.googleapis.com/auth/source.read_only": { + "description": "View the contents of your source code repositories" + } + } + } + }, + "rootUrl": "https://sourcerepo.googleapis.com/", + "ownerDomain": "google.com", + "name": "sourcerepo", + "batchPath": "batch", + "title": "Cloud Source Repositories API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "repos": { + "methods": { + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "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 detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/repos/.+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", + "id": "sourcerepo.projects.repos.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error." + }, + "delete": { + "description": "Deletes a repo.", + "response": { + "$ref": "Empty" + }, + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ], + "parameters": { + "name": { + "location": "path", + "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/repos/.+$" + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}", + "id": "sourcerepo.projects.repos.delete", + "path": "v1/{+name}" + }, + "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" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "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.", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "The project ID whose repos should be listed. Values are of the form\n`projects/\u003cproject\u003e`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+$" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Maximum number of repositories to return; between 1 and 500.\nIf not set or zero, defaults to 100 at the server.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ], + "flatPath": "v1/projects/{projectsId}/repos", + "id": "sourcerepo.projects.repos.list", + "path": "v1/{+name}/repos" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "Repo" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/repos", + "path": "v1/{+parent}/repos", + "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": { + "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/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 is being specified.\nSee the operation documentation for the appropriate value for this field.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy", + "id": "sourcerepo.projects.repos.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy" + }, + "getIamPolicy": { + "id": "sourcerepo.projects.repos.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "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.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/repos/.+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy" + }, + "get": { + "description": "Returns information about a repo.", + "response": { + "$ref": "Repo" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/source.read_only", + "https://www.googleapis.com/auth/source.read_write" + ], + "parameters": { + "name": { + "location": "path", + "description": "The name of the requested repository. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/repos/.+$" + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}", + "id": "sourcerepo.projects.repos.get", + "path": "v1/{+name}" + } + } } } + } + }, + "parameters": { + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" }, - "LogConfig": { - "type": "object", - "properties": { - "counter": { - "$ref": "CounterOptions", - "description": "Counter options." - }, - "dataAccess": { - "$ref": "DataAccessOptions", - "description": "Data access options." - }, - "cloudAudit": { - "$ref": "CloudAuditOptions", - "description": "Cloud audit options." - } - }, - "id": "LogConfig", - "description": "Specifies what kind of log the caller must write" + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "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).", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "TestIamPermissionsRequest" + "bearer_token": { + "location": "query", + "description": "OAuth bearer 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**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", - "type": "object", - "properties": { - "version": { - "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", - "type": "integer" - }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - }, - "type": "array" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\nMultiple `bindings` must not be specified for the same `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - }, - "type": "array" - }, - "etag": { - "type": "string", - "format": "byte", - "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." - }, - "iamOwned": { - "type": "boolean" - }, - "rules": { - "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - }, - "type": "array" - } - }, - "id": "Policy" + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "DataAccessOptions": { - "id": "DataAccessOptions", - "description": "Write a Data Access (Gin) log", - "type": "object", - "properties": {} + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", - "properties": { - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" - }, - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", - "items": { - "$ref": "AuditLogConfig" - }, - "type": "array" - }, - "exemptedMembers": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "AuditConfig" - } - }, - "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 Source Repositories", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/source.read_write": { - "description": "Manage the contents of your source code repositories" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/source.read_only": { - "description": "View the contents of your source code repositories" - } - } + "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" + }, + "key": { + "description": "API key. 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" } }, - "rootUrl": "https://sourcerepo.googleapis.com/" + "version": "v1", + "baseUrl": "https://sourcerepo.googleapis.com/", + "servicePath": "", + "description": "Access source code repositories hosted by Google.", + "kind": "discovery#restDescription", + "basePath": "", + "revision": "20170528", + "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", + "id": "sourcerepo:v1", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/spanner_v1.json b/DiscoveryJson/spanner_v1.json index 167f859c37..3f8e082239 100644 --- a/DiscoveryJson/spanner_v1.json +++ b/DiscoveryJson/spanner_v1.json @@ -1,1267 +1,1345 @@ { - "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": "", - "documentationLink": "https://cloud.google.com/spanner/", - "revision": "20170701", "id": "spanner:v1", + "revision": "20170701", + "documentationLink": "https://cloud.google.com/spanner/", "discoveryVersion": "v1", "version_module": "True", "schemas": { - "Rule": { - "description": "A rule to be applied in a Policy.", + "Database": { + "description": "A Cloud Spanner database.", "type": "object", "properties": { - "notIn": { - "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", - "items": { - "type": "string" - }, - "type": "array" + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY" + ], + "description": "Output only. The current database state.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "The database is still being created. Operations on the database may fail\nwith `FAILED_PRECONDITION` in this state.", + "The database is fully created and ready for use." + ] }, - "description": { - "description": "Human-readable description of the rule.", + "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" }, - "conditions": { - "description": "Additional restrictions that must be met", - "items": { - "$ref": "Condition" - }, - "type": "array" - }, - "logConfig": { - "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", - "items": { - "$ref": "LogConfig" - }, - "type": "array" + "nodeCount": { + "format": "int32", + "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`.", + "type": "integer" }, - "in": { - "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", - "items": { + "labels": { + "additionalProperties": { "type": "string" }, - "type": "array" + "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" }, - "permissions": { - "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", - "items": { - "type": "string" - }, - "type": "array" + "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" }, - "action": { - "description": "Required", - "type": "string", + "state": { "enumDescriptions": [ - "Default no action.", - "Matching 'Entries' grant access.", - "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' deny access.", - "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", - "Matching 'Entries' tell IAM.Check callers to generate logs." + "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": [ - "NO_ACTION", - "ALLOW", - "ALLOW_WITH_LOG", - "DENY", - "DENY_WITH_LOG", - "LOG" - ] + "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": { + "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": "Rule" + "id": "Instance" }, - "CreateDatabaseMetadata": { - "description": "Metadata type for the operation returned by\nCreateDatabase.", + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { - "database": { - "description": "The database being created.", + "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": { + "format": "google-fieldmask", + "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.", "type": "string" } }, - "id": "CreateDatabaseMetadata" + "id": "SetIamPolicyRequest" }, - "LogConfig": { - "description": "Specifies what kind of log the caller must write", - "type": "object", + "ListDatabasesResponse": { "properties": { - "counter": { - "description": "Counter options.", - "$ref": "CounterOptions" - }, - "dataAccess": { - "description": "Data access options.", - "$ref": "DataAccessOptions" + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListDatabases call to fetch more\nof the matching databases.", + "type": "string" }, - "cloudAudit": { - "$ref": "CloudAuditOptions", - "description": "Cloud audit options." + "databases": { + "description": "Databases that matched the request.", + "items": { + "$ref": "Database" + }, + "type": "array" } }, - "id": "LogConfig" + "id": "ListDatabasesResponse", + "description": "The response for ListDatabases.", + "type": "object" }, - "Session": { - "description": "A session in the Cloud Spanner API.", + "RollbackRequest": { + "properties": { + "transactionId": { + "format": "byte", + "description": "Required. The transaction to roll back.", + "type": "string" + } + }, + "id": "RollbackRequest", + "description": "The request for Rollback.", + "type": "object" + }, + "Transaction": { + "description": "A transaction.", "type": "object", "properties": { - "name": { - "description": "Required. The name of the session.", + "id": { + "format": "byte", + "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.", + "type": "string" + }, + "readTimestamp": { + "format": "google-datetime", + "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.", "type": "string" } }, - "id": "Session" + "id": "Transaction" }, - "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.", + "UpdateDatabaseDdlMetadata": { + "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", "type": "object", "properties": { - "endOpen": { - "description": "If the end is open, then the range excludes rows whose first\n`len(end_open)` key columns exactly match `end_open`.", - "items": { - "type": "any" - }, - "type": "array" + "database": { + "description": "The database being modified.", + "type": "string" }, - "endClosed": { - "description": "If the end is closed, then the range includes all rows whose\nfirst `len(end_closed)` key columns exactly match `end_closed`.", + "statements": { + "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.", "items": { - "type": "any" + "type": "string" }, "type": "array" }, - "startOpen": { - "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.", + "commitTimestamps": { + "description": "Reports the commit timestamps of all statements that have\nsucceeded so far, where `commit_timestamps[i]` is the commit\ntimestamp for the statement `statements[i]`.", "items": { - "type": "any" + "format": "google-datetime", + "type": "string" }, "type": "array" + } + }, + "id": "UpdateDatabaseDdlMetadata" + }, + "CounterOptions": { + "properties": { + "field": { + "description": "The field value to attribute.", + "type": "string" }, - "startClosed": { - "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`.", - "items": { - "type": "any" - }, - "type": "array" + "metric": { + "description": "The metric to update.", + "type": "string" } }, - "id": "KeyRange" + "id": "CounterOptions", + "description": "Options for counters", + "type": "object" }, - "ListInstancesResponse": { - "description": "The response for ListInstances.", + "QueryPlan": { + "description": "Contains an ordered list of nodes appearing in the query plan.", "type": "object", "properties": { - "instances": { - "description": "The list of requested instances.", + "planNodes": { + "description": "The nodes in the query plan. Plan nodes are returned in pre-order starting\nwith the plan root. Each PlanNode's `id` corresponds to its index in\n`plan_nodes`.", "items": { - "$ref": "Instance" + "$ref": "PlanNode" }, "type": "array" - }, - "nextPageToken": { - "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.", - "type": "string" } }, - "id": "ListInstancesResponse" + "id": "QueryPlan" }, - "ShortRepresentation": { - "description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).", + "StructType": { + "description": "`StructType` defines the fields of a STRUCT type.", "type": "object", "properties": { - "description": { - "description": "A string representation of the expression subtree rooted at this node.", - "type": "string" - }, - "subqueries": { - "additionalProperties": { - "format": "int32", - "type": "integer" + "fields": { + "description": "The list of fields that make up this struct. Order is\nsignificant, because values of this struct type are represented as\nlists, where the order of field values matches the order of\nfields in the StructType. In turn, the order of fields\nmatches the order of columns in a read request, or the order of\nfields in the `SELECT` clause of a query.", + "items": { + "$ref": "Field" }, - "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" + "type": "array" } }, - "id": "ShortRepresentation" + "id": "StructType" }, - "InstanceConfig": { - "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", - "type": "object", + "Field": { "properties": { "name": { - "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`", + "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" }, - "displayName": { - "description": "The name of this instance configuration as it appears in UIs.", - "type": "string" + "type": { + "description": "The type of the field.", + "$ref": "Type" } }, - "id": "InstanceConfig" + "id": "Field", + "description": "Message representing a single field of a struct.", + "type": "object" }, - "UpdateInstanceRequest": { - "description": "The request for UpdateInstance.", - "type": "object", + "TestIamPermissionsRequest": { "properties": { - "fieldMask": { - "format": "google-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.", - "type": "string" - }, - "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." + "permissions": { + "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "UpdateInstanceRequest" - }, - "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": "TestIamPermissionsRequest", + "description": "Request message for `TestIamPermissions` method.", + "type": "object" }, - "TransactionOptions": { - "description": "# Transactions\n\n\nEach session can have at most one active transaction at a time. After the\nactive transaction is completed, the session can immediately be\nre-used for the next transaction. It is not necessary to create a\nnew session for each transaction.\n\n# Transaction Modes\n\nCloud Spanner supports two transaction modes:\n\n 1. Locking read-write. This type of transaction is the only way\n to write data into Cloud Spanner. These transactions rely on\n pessimistic locking and, if necessary, two-phase commit.\n Locking read-write transactions may abort, requiring the\n application to retry.\n\n 2. Snapshot read-only. This transaction type provides guaranteed\n consistency across several reads, but does not allow\n writes. Snapshot read-only transactions can be configured to\n read at timestamps in the past. Snapshot read-only\n transactions do not need to be committed.\n\nFor transactions that only read, snapshot read-only transactions\nprovide simpler semantics and are almost always faster. In\nparticular, read-only transactions do not take locks, so they do\nnot conflict with read-write transactions. As a consequence of not\ntaking locks, they also do not abort, so retry loops are not needed.\n\nTransactions may only read/write data in a single database. They\nmay, however, read/write data in different tables within that\ndatabase.\n\n## Locking Read-Write Transactions\n\nLocking transactions may be used to atomically read-modify-write\ndata anywhere in a database. This type of transaction is externally\nconsistent.\n\nClients should attempt to minimize the amount of time a transaction\nis active. Faster transactions commit with higher probability\nand cause less contention. Cloud Spanner attempts to keep read locks\nactive as long as the transaction continues to do reads, and the\ntransaction has not been terminated by\nCommit or\nRollback. Long periods of\ninactivity at the client may cause Cloud Spanner to release a\ntransaction's locks and abort it.\n\nReads performed within a transaction acquire locks on the data\nbeing read. Writes can only be done at commit time, after all reads\nhave been completed.\nConceptually, a read-write transaction consists of zero or more\nreads or SQL queries followed by\nCommit. At any time before\nCommit, the client can send a\nRollback request to abort the\ntransaction.\n\n### Semantics\n\nCloud Spanner can commit the transaction if all read locks it acquired\nare still valid at commit time, and it is able to acquire write\nlocks for all writes. Cloud Spanner can abort the transaction for any\nreason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees\nthat the transaction has not modified any user data in Cloud Spanner.\n\nUnless the transaction commits, Cloud Spanner makes no guarantees about\nhow long the transaction's locks were held for. It is an error to\nuse Cloud Spanner locks for any sort of mutual exclusion other than\nbetween Cloud Spanner transactions themselves.\n\n### Retrying Aborted Transactions\n\nWhen a transaction aborts, the application can choose to retry the\nwhole transaction again. To maximize the chances of successfully\ncommitting the retry, the client should execute the retry in the\nsame session as the original attempt. The original session's lock\npriority increases with each consecutive abort, meaning that each\nattempt has a slightly better chance of success than the previous.\n\nUnder some circumstances (e.g., many transactions attempting to\nmodify the same row(s)), a transaction can abort many times in a\nshort period before successfully committing. Thus, it is not a good\nidea to cap the number of retries a transaction can attempt;\ninstead, it is better to limit the total amount of wall time spent\nretrying.\n\n### Idle Transactions\n\nA transaction is considered idle if it has no outstanding reads or\nSQL queries and has not started a read or SQL query within the last 10\nseconds. Idle transactions can be aborted by Cloud Spanner so that they\ndon't hold on to locks indefinitely. In that case, the commit will\nfail with error `ABORTED`.\n\nIf this behavior is undesirable, periodically executing a simple\nSQL query in the transaction (e.g., `SELECT 1`) prevents the\ntransaction from becoming idle.\n\n## Snapshot Read-Only Transactions\n\nSnapshot read-only transactions provides a simpler method than\nlocking read-write transactions for doing several consistent\nreads. However, this type of transaction does not support writes.\n\nSnapshot transactions do not take locks. Instead, they work by\nchoosing a Cloud Spanner timestamp, then executing all reads at that\ntimestamp. Since they do not acquire locks, they do not block\nconcurrent read-write transactions.\n\nUnlike locking read-write transactions, snapshot read-only\ntransactions never abort. They can fail if the chosen read\ntimestamp is garbage collected; however, the default garbage\ncollection policy is generous enough that most applications do not\nneed to worry about this in practice.\n\nSnapshot read-only transactions do not need to call\nCommit or\nRollback (and in fact are not\npermitted to do so).\n\nTo execute a snapshot transaction, the client specifies a timestamp\nbound, which tells Cloud Spanner how to choose a read timestamp.\n\nThe types of timestamp bound are:\n\n - Strong (the default).\n - Bounded staleness.\n - Exact staleness.\n\nIf the Cloud Spanner database to be read is geographically distributed,\nstale read-only transactions can execute more quickly than strong\nor read-write transaction, because they are able to execute far\nfrom the leader replica.\n\nEach type of timestamp bound is discussed in detail below.\n\n### Strong\n\nStrong reads are guaranteed to see the effects of all transactions\nthat have committed before the start of the read. Furthermore, all\nrows yielded by a single read are consistent with each other -- if\nany part of the read observes a transaction, all parts of the read\nsee the transaction.\n\nStrong reads are not repeatable: two consecutive strong read-only\ntransactions might return inconsistent results if there are\nconcurrent writes. If consistency across reads is required, the\nreads should be executed within a transaction or at an exact read\ntimestamp.\n\nSee TransactionOptions.ReadOnly.strong.\n\n### Exact Staleness\n\nThese timestamp bounds execute reads at a user-specified\ntimestamp. Reads at a timestamp are guaranteed to see a consistent\nprefix of the global transaction history: they observe\nmodifications done by all transactions with a commit timestamp \u003c=\nthe read timestamp, and observe none of the modifications done by\ntransactions with a larger commit timestamp. They will block until\nall conflicting transactions that may be assigned commit timestamps\n\u003c= the read timestamp have finished.\n\nThe timestamp can either be expressed as an absolute Cloud Spanner commit\ntimestamp or a staleness relative to the current time.\n\nThese modes do not require a \"negotiation phase\" to pick a\ntimestamp. As a result, they execute slightly faster than the\nequivalent boundedly stale concurrency modes. On the other hand,\nboundedly stale reads usually return fresher results.\n\nSee TransactionOptions.ReadOnly.read_timestamp and\nTransactionOptions.ReadOnly.exact_staleness.\n\n### Bounded Staleness\n\nBounded staleness modes allow Cloud Spanner to pick the read timestamp,\nsubject to a user-provided staleness bound. Cloud Spanner chooses the\nnewest timestamp within the staleness bound that allows execution\nof the reads at the closest available replica without blocking.\n\nAll rows yielded are consistent with each other -- if any part of\nthe read observes a transaction, all parts of the read see the\ntransaction. Boundedly stale reads are not repeatable: two stale\nreads, even if they use the same staleness bound, can execute at\ndifferent timestamps and thus return inconsistent results.\n\nBoundedly stale reads execute in two phases: the first phase\nnegotiates a timestamp among all replicas needed to serve the\nread. In the second phase, reads are executed at the negotiated\ntimestamp.\n\nAs a result of the two phase execution, bounded staleness reads are\nusually a little slower than comparable exact staleness\nreads. However, they are typically able to return fresher\nresults, and are more likely to execute at the closest replica.\n\nBecause the timestamp negotiation requires up-front knowledge of\nwhich rows will be read, it can only be used with single-use\nread-only transactions.\n\nSee TransactionOptions.ReadOnly.max_staleness and\nTransactionOptions.ReadOnly.min_read_timestamp.\n\n### Old Read Timestamps and Garbage Collection\n\nCloud Spanner continuously garbage collects deleted and overwritten data\nin the background to reclaim storage space. This process is known\nas \"version GC\". By default, version GC reclaims versions after they\nare one hour old. Because of this, Cloud Spanner cannot perform reads\nat read timestamps more than one hour in the past. This\nrestriction also applies to in-progress reads and/or SQL queries whose\ntimestamp become too old while executing. Reads and SQL queries with\ntoo-old read timestamps fail with the error `FAILED_PRECONDITION`.", - "type": "object", + "ResultSetStats": { "properties": { - "readOnly": { - "$ref": "ReadOnly", - "description": "Transaction will not write.\n\nAuthorization to begin a read-only transaction requires\n`spanner.databases.beginReadOnlyTransaction` permission\non the `session` resource." + "queryStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Aggregated statistics from the execution of the query. Only present when\nthe query is profiled. For example, a query could return the statistics as\nfollows:\n\n {\n \"rows_returned\": \"3\",\n \"elapsed_time\": \"1.22 secs\",\n \"cpu_time\": \"1.19 secs\"\n }", + "type": "object" }, - "readWrite": { - "$ref": "ReadWrite", - "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource." + "queryPlan": { + "$ref": "QueryPlan", + "description": "QueryPlan for the query associated with this result." } }, - "id": "TransactionOptions" + "id": "ResultSetStats", + "description": "Additional statistics about a ResultSet or PartialResultSet.", + "type": "object" }, - "CreateDatabaseRequest": { - "description": "The request for CreateDatabase.", - "type": "object", + "CommitResponse": { "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.", - "items": { - "type": "string" - }, - "type": "array" - }, - "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 (`` ` ``).", + "commitTimestamp": { + "format": "google-datetime", + "description": "The Cloud Spanner timestamp at which the transaction committed.", "type": "string" } }, - "id": "CreateDatabaseRequest" + "id": "CommitResponse", + "description": "The response for Commit.", + "type": "object" }, - "CreateInstanceRequest": { - "description": "The request for CreateInstance.", - "type": "object", + "Type": { "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" + "structType": { + "$ref": "StructType", + "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields." }, - "instance": { - "$ref": "Instance", - "description": "Required. The instance to create. The name may be omitted, but if\nspecified must be `\u003cparent\u003e/instances/\u003cinstance_id\u003e`." + "arrayElementType": { + "$ref": "Type", + "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements." + }, + "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\"`.", + "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": "CreateInstanceRequest" + "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" }, - "Condition": { - "description": "A condition to be met.", + "PlanNode": { + "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.", "type": "object", "properties": { - "value": { - "description": "DEPRECATED. Use 'values' instead.", - "type": "string" - }, - "sys": { - "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", - "type": "string", - "enumDescriptions": [ - "Default non-attribute type", - "Region of the resource", - "Service name", - "Resource name", - "IP address of the caller" - ], - "enum": [ - "NO_ATTR", - "REGION", - "SERVICE", - "NAME", - "IP" - ] - }, - "values": { - "description": "The objects of the condition. This is mutually exclusive with 'value'.", - "items": { - "type": "string" + "executionStats": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "type": "array" + "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" }, - "iam": { - "enumDescriptions": [ - "Default non-attribute.", - "Either principal or (if present) authority selector.", - "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", - "Any of the security realms in the IAMContext (go/security-realms).\nWhen used with IN, the condition indicates \"any of the request's realms\nmatch one of the given values; with NOT_IN, \"none of the realms match\nany of the given values\". It is not permitted to grant access based on\nthe *absence* of a realm, so realm conditions can only be used in\na \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).", - "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", - "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." - ], - "enum": [ - "NO_ATTR", - "AUTHORITY", - "ATTRIBUTION", - "SECURITY_REALM", - "APPROVER", - "JUSTIFICATION_TYPE" - ], - "description": "Trusted attributes supplied by the IAM system.", - "type": "string" + "shortRepresentation": { + "description": "Condensed representation for SCALAR nodes.", + "$ref": "ShortRepresentation" }, - "op": { + "index": { + "format": "int32", + "description": "The `PlanNode`'s index in node list.", + "type": "integer" + }, + "kind": { "enumDescriptions": [ - "Default no-op.", - "DEPRECATED. Use IN instead.", - "DEPRECATED. Use NOT_IN instead.", - "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", - "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", - "Subject is discharged" + "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": [ - "NO_OP", - "EQUALS", - "NOT_EQUALS", - "IN", - "NOT_IN", - "DISCHARGED" + "KIND_UNSPECIFIED", + "RELATIONAL", + "SCALAR" ], - "description": "An operator to apply the subject with.", + "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" }, - "svc": { - "description": "Trusted attributes discharged by the service.", + "displayName": { + "description": "The display name for the node.", "type": "string" - } - }, - "id": "Condition" - }, - "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.", + "childLinks": { + "description": "List of child node `index`es and their relationship to this parent.", "items": { - "type": "string" + "$ref": "ChildLink" }, "type": "array" + }, + "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" } }, - "id": "AuditLogConfig" + "id": "PlanNode" }, - "ReadOnly": { - "description": "Message type to initiate a read-only transaction.", - "type": "object", + "CreateInstanceMetadata": { "properties": { - "strong": { - "description": "Read at a timestamp where all previously committed transactions\nare visible.", - "type": "boolean" - }, - "minReadTimestamp": { + "startTime": { "format": "google-datetime", - "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.", + "description": "The time at which the\nCreateInstance request was\nreceived.", "type": "string" }, - "maxStaleness": { - "format": "google-duration", - "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.", - "type": "string" + "instance": { + "$ref": "Instance", + "description": "The instance being created." }, - "readTimestamp": { + "endTime": { "format": "google-datetime", - "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.", + "description": "The time at which this operation failed or was completed successfully.", "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": { - "format": "google-duration", - "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`.", + "cancelTime": { + "format": "google-datetime", + "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.", "type": "string" } }, - "id": "ReadOnly" + "id": "CreateInstanceMetadata", + "description": "Metadata type for the operation returned by\nCreateInstance.", + "type": "object" }, - "ExecuteSqlRequest": { - "description": "The request for ExecuteSql and\nExecuteStreamingSql.", - "type": "object", + "AuditConfig": { "properties": { - "paramTypes": { - "description": "It is not always possible for Cloud Spanner to infer the right SQL type\nfrom a JSON value. For example, values of type `BYTES` and values\nof type `STRING` both appear in params as JSON strings.\n\nIn these cases, `param_types` can be used to specify the exact\nSQL type for some or all of the SQL query parameters. See the\ndefinition of Type for more information\nabout SQL types.", - "type": "object", - "additionalProperties": { - "$ref": "Type" - } - }, - "sql": { - "description": "Required. The SQL query string.", + "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" }, - "params": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "items": { + "$ref": "AuditLogConfig" }, - "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" - }, - "queryMode": { - "enumDescriptions": [ - "The default mode where only the query result, without any information\nabout the query plan is returned.", - "This mode returns only the query plan, without any result rows or\nexecution statistics information.", - "This mode returns both the query plan and the execution statistics along\nwith the result rows." - ], - "enum": [ - "NORMAL", - "PLAN", - "PROFILE" - ], - "description": "Used to control the amount of debugging information returned in\nResultSetStats.", - "type": "string" - }, - "transaction": { - "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.", - "$ref": "TransactionSelector" + "type": "array" }, - "resumeToken": { - "format": "byte", - "description": "If this request is resuming a previously interrupted SQL query\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL query execution to resume where the last one left\noff. The rest of the request parameters must exactly match the\nrequest that yielded this token.", - "type": "string" + "exemptedMembers": { + "items": { + "type": "string" + }, + "type": "array" } }, - "id": "ExecuteSqlRequest" + "id": "AuditConfig", + "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", + "type": "object" }, - "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).", + "ChildLink": { + "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.", "type": "object", "properties": { - "version": { + "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" + }, + "childIndex": { "format": "int32", - "description": "Version of the `Policy`. The default version is 0.", + "description": "The node to which the link points.", "type": "integer" }, - "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", - "items": { - "$ref": "AuditConfig" - }, - "type": "array" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - }, - "type": "array" - }, - "etag": { - "format": "byte", - "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.", + "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" - }, - "iamOwned": { - "type": "boolean" - }, - "rules": { - "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", - "items": { - "$ref": "Rule" - }, - "type": "array" } }, - "id": "Policy" + "id": "ChildLink" }, - "ReadRequest": { - "description": "The request for Read and\nStreamingRead.", - "type": "object", + "CloudAuditOptions": { "properties": { - "columns": { - "description": "The columns of table to be returned for each row matching\nthis request.", - "items": { - "type": "string" - }, - "type": "array" - }, - "transaction": { - "$ref": "TransactionSelector", - "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency." - }, - "resumeToken": { - "format": "byte", - "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.", + "logName": { + "enum": [ + "UNSPECIFIED_LOG_NAME", + "ADMIN_ACTIVITY", + "DATA_ACCESS" + ], + "description": "The log_name to populate in the Cloud Audit Record.", + "type": "string", + "enumDescriptions": [ + "Default. Should not be used.", + "Corresponds to \"cloudaudit.googleapis.com/activity\"", + "Corresponds to \"cloudaudit.googleapis.com/data_access\"" + ] + } + }, + "id": "CloudAuditOptions", + "description": "Write a Cloud Audit log", + "type": "object" + }, + "Expr": { + "properties": { + "description": { + "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", "type": "string" }, - "table": { - "description": "Required. The name of the table in the database to be read.", + "expression": { + "description": "Textual representation of an expression in\n[Common Expression Language](http://go/api-expr) syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", "type": "string" }, - "limit": { - "format": "int64", - "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit.", + "location": { + "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", "type": "string" }, - "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.", + "title": { + "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", "type": "string" - }, + } + }, + "id": "Expr", + "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", + "type": "object" + }, + "Delete": { + "properties": { "keySet": { - "description": "Required. `key_set` identifies the rows to be yielded. `key_set` names the\nprimary keys of the rows in table to be yielded, unless index\nis present. If index is present, then key_set instead names\nindex keys in index.\n\nRows are yielded in table primary key order (if index is empty)\nor index key order (if index is non-empty).\n\nIt is not an error for the `key_set` to name rows that do not\nexist in the database. Read yields nothing for nonexistent rows.", + "description": "Required. The primary keys of the rows within table to delete.", "$ref": "KeySet" + }, + "table": { + "description": "Required. The table whose rows will be deleted.", + "type": "string" } }, - "id": "ReadRequest" + "id": "Delete", + "description": "Arguments to delete operations.", + "type": "object" }, - "Write": { - "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", + "ListInstanceConfigsResponse": { + "description": "The response for ListInstanceConfigs.", "type": "object", "properties": { - "table": { - "description": "Required. The table whose rows will be written.", + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations.", "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.", + "instanceConfigs": { + "description": "The list of requested instance configurations.", "items": { - "items": { - "type": "any" - }, - "type": "array" + "$ref": "InstanceConfig" + }, + "type": "array" + } + }, + "id": "ListInstanceConfigsResponse" + }, + "BeginTransactionRequest": { + "properties": { + "options": { + "description": "Required. Options for the new transaction.", + "$ref": "TransactionOptions" + } + }, + "id": "BeginTransactionRequest", + "description": "The request for BeginTransaction.", + "type": "object" + }, + "CommitRequest": { + "description": "The request for Commit.", + "type": "object", + "properties": { + "mutations": { + "description": "The mutations to be executed when this transaction commits. All\nmutations are applied atomically, in the order they appear in\nthis list.", + "items": { + "$ref": "Mutation" }, "type": "array" }, - "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.", + "singleUseTransaction": { + "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead.", + "$ref": "TransactionOptions" + }, + "transactionId": { + "format": "byte", + "description": "Commit a previously-started transaction.", + "type": "string" + } + }, + "id": "CommitRequest" + }, + "TestIamPermissionsResponse": { + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", "items": { "type": "string" }, "type": "array" } }, - "id": "Write" - }, - "ReadWrite": { - "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", - "type": "object", - "properties": {}, - "id": "ReadWrite" + "id": "TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method.", + "type": "object" }, - "DataAccessOptions": { - "description": "Write a Data Access (Gin) log", - "type": "object", + "GetIamPolicyRequest": { "properties": {}, - "id": "DataAccessOptions" + "id": "GetIamPolicyRequest", + "description": "Request message for `GetIamPolicy` method.", + "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", + "Rule": { "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" + "permissions": { + "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + }, + "type": "array" }, - "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" - } + "action": { + "enum": [ + "NO_ACTION", + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG" + ], + "description": "Required", + "type": "string", + "enumDescriptions": [ + "Default no action.", + "Matching 'Entries' grant access.", + "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' deny access.", + "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.", + "Matching 'Entries' tell IAM.Check callers to generate logs." + ] }, - "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" + "notIn": { + "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).", + "items": { + "type": "string" + }, + "type": "array" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "description": { + "description": "Human-readable description of the rule.", + "type": "string" }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "conditions": { + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" }, - "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" - }, - "ResultSet": { - "description": "Results from Read or\nExecuteSql.", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the result set, such as row type information.", - "$ref": "ResultSetMetadata" + "type": "array" }, - "stats": { - "description": "Query plan and execution statistics for the query that produced this\nresult set. These can be requested by setting\nExecuteSqlRequest.query_mode.", - "$ref": "ResultSetStats" + "logConfig": { + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.", + "items": { + "$ref": "LogConfig" + }, + "type": "array" }, - "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.", + "in": { + "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", "items": { - "items": { - "type": "any" - }, - "type": "array" + "type": "string" }, "type": "array" } }, - "id": "ResultSet" + "id": "Rule", + "description": "A rule to be applied in a Policy.", + "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.", + "CreateDatabaseMetadata": { + "description": "Metadata type for the operation returned by\nCreateDatabase.", "type": "object", "properties": { - "details": { - "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "type": "array" + "database": { + "description": "The database being created.", + "type": "string" + } + }, + "id": "CreateDatabaseMetadata" + }, + "LogConfig": { + "properties": { + "counter": { + "description": "Counter options.", + "$ref": "CounterOptions" }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" + "dataAccess": { + "description": "Data access options.", + "$ref": "DataAccessOptions" }, - "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" + "cloudAudit": { + "description": "Cloud audit options.", + "$ref": "CloudAuditOptions" } }, - "id": "Status" + "id": "LogConfig", + "description": "Specifies what kind of log the caller must write", + "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.", + "Session": { + "description": "A session in the Cloud Spanner API.", "type": "object", "properties": { - "operationId": { - "description": "If empty, the new update request is assigned an\nautomatically-generated operation ID. Otherwise, `operation_id`\nis used to construct the name of the resulting\nOperation.\n\nSpecifying an explicit operation ID simplifies determining\nwhether the statements were executed in the event that the\nUpdateDatabaseDdl call is replayed,\nor the return value is otherwise lost: the database and\n`operation_id` fields can be combined to form the\nname of the resulting\nlongrunning.Operation: `\u003cdatabase\u003e/operations/\u003coperation_id\u003e`.\n\n`operation_id` should be unique within the database, and must be\na valid identifier: `a-z*`. Note that\nautomatically-generated operation IDs always begin with an\nunderscore. If the named operation already exists,\nUpdateDatabaseDdl returns\n`ALREADY_EXISTS`.", + "name": { + "description": "Required. The name of the session.", "type": "string" - }, - "statements": { - "description": "DDL statements to be applied to the database.", - "items": { - "type": "string" - }, - "type": "array" } }, - "id": "UpdateDatabaseDdlRequest" + "id": "Session" }, - "Binding": { - "description": "Associates `members` with a `role`.", + "ListInstancesResponse": { + "description": "The response for ListInstances.", "type": "object", "properties": { - "condition": { - "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.", - "$ref": "Expr" - }, - "members": { - "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "instances": { + "description": "The list of requested instances.", "items": { - "type": "string" + "$ref": "Instance" }, "type": "array" }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.", "type": "string" } }, - "id": "Binding" + "id": "ListInstancesResponse" }, - "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", + "KeyRange": { "properties": { - "stats": { - "$ref": "ResultSetStats", - "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream." - }, - "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" + "endClosed": { + "description": "If the end is closed, then the range includes all rows whose\nfirst `len(end_closed)` key columns exactly match `end_closed`.", + "items": { + "type": "any" + }, + "type": "array" }, - "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\"`.", + "startOpen": { + "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.", "items": { "type": "any" }, "type": "array" }, - "metadata": { - "$ref": "ResultSetMetadata", - "description": "Metadata about the result set, such as row type information.\nOnly present in the first response." + "startClosed": { + "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`.", + "items": { + "type": "any" + }, + "type": "array" }, - "resumeToken": { - "format": "byte", - "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.", - "type": "string" + "endOpen": { + "description": "If the end is open, then the range excludes rows whose first\n`len(end_open)` key columns exactly match `end_open`.", + "items": { + "type": "any" + }, + "type": "array" } }, - "id": "PartialResultSet" + "id": "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" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "ShortRepresentation": { + "description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", + "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": "ListOperationsResponse" + "id": "ShortRepresentation" }, - "UpdateInstanceMetadata": { - "description": "Metadata type for the operation returned by\nUpdateInstance.", + "InstanceConfig": { + "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", "type": "object", "properties": { - "endTime": { - "format": "google-datetime", - "description": "The time at which this operation failed or was completed successfully.", + "name": { + "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`", "type": "string" }, - "cancelTime": { - "format": "google-datetime", - "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.", + "displayName": { + "description": "The name of this instance configuration as it appears in UIs.", "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "The time at which UpdateInstance\nrequest was received.", + } + }, + "id": "InstanceConfig" + }, + "UpdateInstanceRequest": { + "properties": { + "fieldMask": { + "format": "google-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.", "type": "string" }, "instance": { - "$ref": "Instance", - "description": "The desired end state of the update." + "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" } }, - "id": "UpdateInstanceMetadata" + "id": "UpdateInstanceRequest", + "description": "The request for UpdateInstance.", + "type": "object" }, - "ResultSetMetadata": { - "description": "Metadata about a ResultSet or PartialResultSet.", + "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": { - "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." - }, - "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 ]" - } - }, - "id": "ResultSetMetadata" + "properties": {}, + "id": "Empty" }, - "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.", + "TransactionOptions": { + "description": "# Transactions\n\n\nEach session can have at most one active transaction at a time. After the\nactive transaction is completed, the session can immediately be\nre-used for the next transaction. It is not necessary to create a\nnew session for each transaction.\n\n# Transaction Modes\n\nCloud Spanner supports two transaction modes:\n\n 1. Locking read-write. This type of transaction is the only way\n to write data into Cloud Spanner. These transactions rely on\n pessimistic locking and, if necessary, two-phase commit.\n Locking read-write transactions may abort, requiring the\n application to retry.\n\n 2. Snapshot read-only. This transaction type provides guaranteed\n consistency across several reads, but does not allow\n writes. Snapshot read-only transactions can be configured to\n read at timestamps in the past. Snapshot read-only\n transactions do not need to be committed.\n\nFor transactions that only read, snapshot read-only transactions\nprovide simpler semantics and are almost always faster. In\nparticular, read-only transactions do not take locks, so they do\nnot conflict with read-write transactions. As a consequence of not\ntaking locks, they also do not abort, so retry loops are not needed.\n\nTransactions may only read/write data in a single database. They\nmay, however, read/write data in different tables within that\ndatabase.\n\n## Locking Read-Write Transactions\n\nLocking transactions may be used to atomically read-modify-write\ndata anywhere in a database. This type of transaction is externally\nconsistent.\n\nClients should attempt to minimize the amount of time a transaction\nis active. Faster transactions commit with higher probability\nand cause less contention. Cloud Spanner attempts to keep read locks\nactive as long as the transaction continues to do reads, and the\ntransaction has not been terminated by\nCommit or\nRollback. Long periods of\ninactivity at the client may cause Cloud Spanner to release a\ntransaction's locks and abort it.\n\nReads performed within a transaction acquire locks on the data\nbeing read. Writes can only be done at commit time, after all reads\nhave been completed.\nConceptually, a read-write transaction consists of zero or more\nreads or SQL queries followed by\nCommit. At any time before\nCommit, the client can send a\nRollback request to abort the\ntransaction.\n\n### Semantics\n\nCloud Spanner can commit the transaction if all read locks it acquired\nare still valid at commit time, and it is able to acquire write\nlocks for all writes. Cloud Spanner can abort the transaction for any\nreason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees\nthat the transaction has not modified any user data in Cloud Spanner.\n\nUnless the transaction commits, Cloud Spanner makes no guarantees about\nhow long the transaction's locks were held for. It is an error to\nuse Cloud Spanner locks for any sort of mutual exclusion other than\nbetween Cloud Spanner transactions themselves.\n\n### Retrying Aborted Transactions\n\nWhen a transaction aborts, the application can choose to retry the\nwhole transaction again. To maximize the chances of successfully\ncommitting the retry, the client should execute the retry in the\nsame session as the original attempt. The original session's lock\npriority increases with each consecutive abort, meaning that each\nattempt has a slightly better chance of success than the previous.\n\nUnder some circumstances (e.g., many transactions attempting to\nmodify the same row(s)), a transaction can abort many times in a\nshort period before successfully committing. Thus, it is not a good\nidea to cap the number of retries a transaction can attempt;\ninstead, it is better to limit the total amount of wall time spent\nretrying.\n\n### Idle Transactions\n\nA transaction is considered idle if it has no outstanding reads or\nSQL queries and has not started a read or SQL query within the last 10\nseconds. Idle transactions can be aborted by Cloud Spanner so that they\ndon't hold on to locks indefinitely. In that case, the commit will\nfail with error `ABORTED`.\n\nIf this behavior is undesirable, periodically executing a simple\nSQL query in the transaction (e.g., `SELECT 1`) prevents the\ntransaction from becoming idle.\n\n## Snapshot Read-Only Transactions\n\nSnapshot read-only transactions provides a simpler method than\nlocking read-write transactions for doing several consistent\nreads. However, this type of transaction does not support writes.\n\nSnapshot transactions do not take locks. Instead, they work by\nchoosing a Cloud Spanner timestamp, then executing all reads at that\ntimestamp. Since they do not acquire locks, they do not block\nconcurrent read-write transactions.\n\nUnlike locking read-write transactions, snapshot read-only\ntransactions never abort. They can fail if the chosen read\ntimestamp is garbage collected; however, the default garbage\ncollection policy is generous enough that most applications do not\nneed to worry about this in practice.\n\nSnapshot read-only transactions do not need to call\nCommit or\nRollback (and in fact are not\npermitted to do so).\n\nTo execute a snapshot transaction, the client specifies a timestamp\nbound, which tells Cloud Spanner how to choose a read timestamp.\n\nThe types of timestamp bound are:\n\n - Strong (the default).\n - Bounded staleness.\n - Exact staleness.\n\nIf the Cloud Spanner database to be read is geographically distributed,\nstale read-only transactions can execute more quickly than strong\nor read-write transaction, because they are able to execute far\nfrom the leader replica.\n\nEach type of timestamp bound is discussed in detail below.\n\n### Strong\n\nStrong reads are guaranteed to see the effects of all transactions\nthat have committed before the start of the read. Furthermore, all\nrows yielded by a single read are consistent with each other -- if\nany part of the read observes a transaction, all parts of the read\nsee the transaction.\n\nStrong reads are not repeatable: two consecutive strong read-only\ntransactions might return inconsistent results if there are\nconcurrent writes. If consistency across reads is required, the\nreads should be executed within a transaction or at an exact read\ntimestamp.\n\nSee TransactionOptions.ReadOnly.strong.\n\n### Exact Staleness\n\nThese timestamp bounds execute reads at a user-specified\ntimestamp. Reads at a timestamp are guaranteed to see a consistent\nprefix of the global transaction history: they observe\nmodifications done by all transactions with a commit timestamp \u003c=\nthe read timestamp, and observe none of the modifications done by\ntransactions with a larger commit timestamp. They will block until\nall conflicting transactions that may be assigned commit timestamps\n\u003c= the read timestamp have finished.\n\nThe timestamp can either be expressed as an absolute Cloud Spanner commit\ntimestamp or a staleness relative to the current time.\n\nThese modes do not require a \"negotiation phase\" to pick a\ntimestamp. As a result, they execute slightly faster than the\nequivalent boundedly stale concurrency modes. On the other hand,\nboundedly stale reads usually return fresher results.\n\nSee TransactionOptions.ReadOnly.read_timestamp and\nTransactionOptions.ReadOnly.exact_staleness.\n\n### Bounded Staleness\n\nBounded staleness modes allow Cloud Spanner to pick the read timestamp,\nsubject to a user-provided staleness bound. Cloud Spanner chooses the\nnewest timestamp within the staleness bound that allows execution\nof the reads at the closest available replica without blocking.\n\nAll rows yielded are consistent with each other -- if any part of\nthe read observes a transaction, all parts of the read see the\ntransaction. Boundedly stale reads are not repeatable: two stale\nreads, even if they use the same staleness bound, can execute at\ndifferent timestamps and thus return inconsistent results.\n\nBoundedly stale reads execute in two phases: the first phase\nnegotiates a timestamp among all replicas needed to serve the\nread. In the second phase, reads are executed at the negotiated\ntimestamp.\n\nAs a result of the two phase execution, bounded staleness reads are\nusually a little slower than comparable exact staleness\nreads. However, they are typically able to return fresher\nresults, and are more likely to execute at the closest replica.\n\nBecause the timestamp negotiation requires up-front knowledge of\nwhich rows will be read, it can only be used with single-use\nread-only transactions.\n\nSee TransactionOptions.ReadOnly.max_staleness and\nTransactionOptions.ReadOnly.min_read_timestamp.\n\n### Old Read Timestamps and Garbage Collection\n\nCloud Spanner continuously garbage collects deleted and overwritten data\nin the background to reclaim storage space. This process is known\nas \"version GC\". By default, version GC reclaims versions after they\nare one hour old. Because of this, Cloud Spanner cannot perform reads\nat read timestamps more than one hour in the past. This\nrestriction also applies to in-progress reads and/or SQL queries whose\ntimestamp become too old while executing. Reads and SQL queries with\ntoo-old read timestamps fail with the error `FAILED_PRECONDITION`.", "type": "object", "properties": { - "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" + "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": { - "format": "byte", - "description": "Execute the read or SQL query in a previously-started transaction.", - "type": "string" + "readWrite": { + "$ref": "ReadWrite", + "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource." } }, - "id": "TransactionSelector" + "id": "TransactionOptions" }, - "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.", + "CreateDatabaseRequest": { + "description": "The request for CreateDatabase.", "type": "object", "properties": { - "ranges": { - "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.", + "extraStatements": { + "description": "An optional list of DDL statements to run inside the newly created\ndatabase. Statements can create tables, indexes, etc. These\nstatements execute atomically with the creation of the database:\nif there is an error in any statement, the database is not created.", "items": { - "$ref": "KeyRange" + "type": "string" }, "type": "array" }, - "all": { - "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.", - "type": "boolean" - }, - "keys": { - "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.", - "items": { - "items": { - "type": "any" - }, - "type": "array" - }, - "type": "array" + "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": "KeySet" + "id": "CreateDatabaseRequest" }, - "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", + "CreateInstanceRequest": { "properties": { - "delete": { - "$ref": "Delete", - "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present." - }, - "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" - }, - "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`." - }, - "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" + "instance": { + "$ref": "Instance", + "description": "Required. The instance to create. The name may be omitted, but if\nspecified must be `\u003cparent\u003e/instances/\u003cinstance_id\u003e`." }, - "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" + "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" } }, - "id": "Mutation" + "id": "CreateInstanceRequest", + "description": "The request for CreateInstance.", + "type": "object" }, - "GetDatabaseDdlResponse": { - "description": "The response for GetDatabaseDdl.", + "Condition": { + "description": "A condition to be met.", "type": "object", "properties": { - "statements": { - "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.", + "values": { + "description": "The objects of the condition. This is mutually exclusive with 'value'.", "items": { "type": "string" }, "type": "array" - } - }, - "id": "GetDatabaseDdlResponse" - }, - "Database": { - "description": "A Cloud Spanner database.", - "type": "object", - "properties": { - "state": { - "description": "Output only. The current database state.", + }, + "iam": { + "enum": [ + "NO_ATTR", + "AUTHORITY", + "ATTRIBUTION", + "SECURITY_REALM", + "APPROVER", + "JUSTIFICATION_TYPE" + ], + "description": "Trusted attributes supplied by the IAM system.", "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" + "Default non-attribute.", + "Either principal or (if present) authority selector.", + "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.", + "Any of the security realms in the IAMContext (go/security-realms).\nWhen used with IN, the condition indicates \"any of the request's realms\nmatch one of the given values; with NOT_IN, \"none of the realms match\nany of the given values\". It is not permitted to grant access based on\nthe *absence* of a realm, so realm conditions can only be used in\na \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).", + "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).", + "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported." ] }, - "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": { - "format": "int32", - "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`.", - "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" + "op": { + "enum": [ + "NO_OP", + "EQUALS", + "NOT_EQUALS", + "IN", + "NOT_IN", + "DISCHARGED" + ], + "description": "An operator to apply the subject with.", + "type": "string", + "enumDescriptions": [ + "Default no-op.", + "DEPRECATED. Use IN instead.", + "DEPRECATED. Use NOT_IN instead.", + "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.", + "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.", + "Subject is discharged" + ] }, - "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.", + "svc": { + "description": "Trusted attributes discharged by the service.", "type": "string" }, - "state": { - "description": "Output only. The current instance state. For\nCreateInstance, the state must be\neither omitted or set to `CREATING`. For\nUpdateInstance, the state must be\neither omitted or set to `READY`.", - "type": "string", + "sys": { "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." + "Default non-attribute type", + "Region of the resource", + "Service name", + "Resource name", + "IP address of the caller" ], "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY" - ] - }, - "name": { - "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", + "NO_ATTR", + "REGION", + "SERVICE", + "NAME", + "IP" + ], + "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.", "type": "string" - } - }, - "id": "Instance" - }, - "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": { - "format": "google-fieldmask", - "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.", + "value": { + "description": "DEPRECATED. Use 'values' instead.", "type": "string" } }, - "id": "SetIamPolicyRequest" + "id": "Condition" }, - "ListDatabasesResponse": { - "description": "The response for ListDatabases.", - "type": "object", + "AuditLogConfig": { "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.", + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.", "items": { - "$ref": "Database" + "type": "string" }, "type": "array" + }, + "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": "ListDatabasesResponse" + "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" }, - "RollbackRequest": { - "description": "The request for Rollback.", - "type": "object", + "ReadOnly": { "properties": { - "transactionId": { - "format": "byte", - "description": "Required. The transaction to roll back.", + "strong": { + "description": "Read at a timestamp where all previously committed transactions\nare visible.", + "type": "boolean" + }, + "minReadTimestamp": { + "format": "google-datetime", + "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.", + "type": "string" + }, + "maxStaleness": { + "format": "google-duration", + "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.", + "type": "string" + }, + "readTimestamp": { + "format": "google-datetime", + "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.", + "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": { + "format": "google-duration", + "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`.", "type": "string" } }, - "id": "RollbackRequest" + "id": "ReadOnly", + "description": "Message type to initiate a read-only transaction.", + "type": "object" }, - "Transaction": { - "description": "A transaction.", + "ExecuteSqlRequest": { + "description": "The request for ExecuteSql and\nExecuteStreamingSql.", "type": "object", "properties": { - "readTimestamp": { - "format": "google-datetime", - "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.", + "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" + }, + "queryMode": { + "enumDescriptions": [ + "The default mode where only the query result, without any information\nabout the query plan is returned.", + "This mode returns only the query plan, without any result rows or\nexecution statistics information.", + "This mode returns both the query plan and the execution statistics along\nwith the result rows." + ], + "enum": [ + "NORMAL", + "PLAN", + "PROFILE" + ], + "description": "Used to control the amount of debugging information returned in\nResultSetStats.", "type": "string" }, - "id": { + "transaction": { + "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.", + "$ref": "TransactionSelector" + }, + "resumeToken": { "format": "byte", - "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.", + "description": "If this request is resuming a previously interrupted SQL query\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL query execution to resume where the last one left\noff. The rest of the request parameters must exactly match the\nrequest that yielded this token.", + "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 query parameters. See the\ndefinition of Type for more information\nabout SQL types.", + "type": "object" + }, + "sql": { + "description": "Required. The SQL query string.", "type": "string" } }, - "id": "Transaction" + "id": "ExecuteSqlRequest" }, - "UpdateDatabaseDdlMetadata": { - "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", + "Policy": { + "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).", "type": "object", "properties": { - "statements": { - "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.", + "etag": { + "format": "byte", + "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.", + "type": "string" + }, + "iamOwned": { + "type": "boolean" + }, + "rules": { + "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.", "items": { - "type": "string" + "$ref": "Rule" }, "type": "array" }, - "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]`.", + "version": { + "format": "int32", + "description": "Version of the `Policy`. The default version is 0.", + "type": "integer" + }, + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", "items": { - "format": "google-datetime", - "type": "string" + "$ref": "AuditConfig" }, "type": "array" }, - "database": { - "description": "The database being modified.", - "type": "string" + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + }, + "type": "array" } }, - "id": "UpdateDatabaseDdlMetadata" + "id": "Policy" }, - "CounterOptions": { - "description": "Options for counters", - "type": "object", + "ReadRequest": { "properties": { - "field": { - "description": "The field value to attribute.", + "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" }, - "metric": { - "description": "The metric to update.", + "keySet": { + "$ref": "KeySet", + "description": "Required. `key_set` identifies the rows to be yielded. `key_set` names the\nprimary keys of the rows in table to be yielded, unless index\nis present. If index is present, then key_set instead names\nindex keys in index.\n\nRows are yielded in table primary key order (if index is empty)\nor index key order (if index is non-empty).\n\nIt is not an error for the `key_set` to name rows that do not\nexist in the database. Read yields nothing for nonexistent rows." + }, + "columns": { + "description": "The columns of table to be returned for each row matching\nthis request.", + "items": { + "type": "string" + }, + "type": "array" + }, + "transaction": { + "$ref": "TransactionSelector", + "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency." + }, + "resumeToken": { + "format": "byte", + "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.", + "type": "string" + }, + "table": { + "description": "Required. The name of the table in the database to be read.", + "type": "string" + }, + "limit": { + "format": "int64", + "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit.", "type": "string" } }, - "id": "CounterOptions" + "id": "ReadRequest", + "description": "The request for Read and\nStreamingRead.", + "type": "object" }, - "StructType": { - "description": "`StructType` defines the fields of a STRUCT type.", - "type": "object", + "Write": { "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.", + "table": { + "description": "Required. The table whose rows will be written.", + "type": "string" + }, + "values": { + "description": "The values to be written. `values` can contain more than one\nlist of values. If it does, then multiple rows are written, one\nfor each entry in `values`. Each list in `values` must have\nexactly as many entries as there are entries in columns\nabove. Sending multiple lists is equivalent to sending multiple\n`Mutation`s, each containing one `values` entry and repeating\ntable and columns. Individual values in each list are\nencoded as described here.", "items": { - "$ref": "Field" + "items": { + "type": "any" + }, + "type": "array" }, "type": "array" - } - }, - "id": "StructType" - }, - "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`.", + }, + "columns": { + "description": "The names of the columns in table to be written.\n\nThe list of columns must contain enough columns to allow\nCloud Spanner to derive values for all primary key columns in the\nrow(s) to be modified.", "items": { - "$ref": "PlanNode" + "type": "string" }, "type": "array" } }, - "id": "QueryPlan" + "id": "Write", + "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", + "type": "object" }, - "Field": { - "description": "Message representing a single field of a struct.", + "DataAccessOptions": { + "description": "Write a Data Access (Gin) log", + "type": "object", + "properties": {}, + "id": "DataAccessOptions" + }, + "ReadWrite": { + "properties": {}, + "id": "ReadWrite", + "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { + "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 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.", + "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" }, - "type": { - "$ref": "Type", - "description": "The type of the field." + "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": "Field" + "id": "Operation" }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", + "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": { - "permissions": { - "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.", + "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 will be a\ncommon set of message types for APIs to use.", "items": { - "type": "string" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } }, - "id": "TestIamPermissionsRequest" + "id": "Status" }, - "ResultSetStats": { - "description": "Additional statistics about a ResultSet or PartialResultSet.", - "type": "object", + "ResultSet": { "properties": { - "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" - } + "rows": { + "description": "Each element in `rows` is a row whose format is defined by\nmetadata.row_type. The ith element\nin each row matches the ith field in\nmetadata.row_type. Elements are\nencoded based on type as described\nhere.", + "items": { + "items": { + "type": "any" + }, + "type": "array" + }, + "type": "array" }, - "queryPlan": { - "$ref": "QueryPlan", - "description": "QueryPlan for the query associated with this result." + "metadata": { + "$ref": "ResultSetMetadata", + "description": "Metadata about the result set, such as row type information." + }, + "stats": { + "description": "Query plan and execution statistics for the query that produced this\nresult set. These can be requested by setting\nExecuteSqlRequest.query_mode.", + "$ref": "ResultSetStats" } }, - "id": "ResultSetStats" + "id": "ResultSet", + "description": "Results from Read or\nExecuteSql.", + "type": "object" }, - "CommitResponse": { - "description": "The response for Commit.", - "type": "object", + "Binding": { "properties": { - "commitTimestamp": { - "format": "google-datetime", - "description": "The Cloud Spanner timestamp at which the transaction committed.", + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", "type": "string" } }, - "id": "CommitResponse" + "id": "Binding", + "description": "Associates `members` with a `role`.", + "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.", + "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": { - "structType": { - "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields.", - "$ref": "StructType" - }, - "arrayElementType": { - "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements.", - "$ref": "Type" + "statements": { + "description": "DDL statements to be applied to the database.", + "items": { + "type": "string" + }, + "type": "array" }, - "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\"`.", - "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.", + "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": "Type" + "id": "UpdateDatabaseDdlRequest" }, - "PlanNode": { - "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.", + "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": { - "metadata": { - "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", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "executionStats": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The execution statistics associated with the node, contained in a group of\nkey-value pairs. Only present if the plan was returned as a result of a\nprofile query. For example, number of executions, number of rows/time per\nexecution etc.", - "type": "object" + "resumeToken": { + "format": "byte", + "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.", + "type": "string" }, - "shortRepresentation": { - "$ref": "ShortRepresentation", - "description": "Condensed representation for SCALAR nodes." + "stats": { + "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream.", + "$ref": "ResultSetStats" }, - "index": { - "format": "int32", - "description": "The `PlanNode`'s index in node list.", - "type": "integer" + "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" }, - "kind": { - "description": "Used to determine the type of node. May be needed for visualizing\ndifferent kinds of nodes differently. For example, If the node is a\nSCALAR node, it will have a condensed representation\nwhich can be used to directly embed a description of the node in its\nparent.", - "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." - ], - "enum": [ - "KIND_UNSPECIFIED", - "RELATIONAL", - "SCALAR" - ] + "values": { + "description": "A streamed result set consists of a stream of values, which might\nbe split into many `PartialResultSet` messages to accommodate\nlarge rows and/or large values. Every N complete values defines a\nrow, where N is equal to the number of entries in\nmetadata.row_type.fields.\n\nMost values are encoded based on type as described\nhere.\n\nIt is possible that the last value in values is \"chunked\",\nmeaning that the rest of the value is sent in subsequent\n`PartialResultSet`(s). This is denoted by the chunked_value\nfield. Two or more chunked values can be merged to form a\ncomplete value as follows:\n\n * `bool/number/null`: cannot be chunked\n * `string`: concatenate the strings\n * `list`: concatenate the lists. If the last element in a list is a\n `string`, `list`, or `object`, merge it with the first element in\n the next list by applying these rules recursively.\n * `object`: concatenate the (field name, field value) pairs. If a\n field name is duplicated, then apply these rules recursively\n to merge the field values.\n\nSome examples of merging:\n\n # Strings are concatenated.\n \"foo\", \"bar\" =\u003e \"foobar\"\n\n # Lists of non-strings are concatenated.\n [2, 3], [4] =\u003e [2, 3, 4]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are strings.\n [\"a\", \"b\"], [\"c\", \"d\"] =\u003e [\"a\", \"bc\", \"d\"]\n\n # Lists are concatenated, but the last and first elements are merged\n # because they are lists. Recursively, the last and first elements\n # of the inner lists are merged because they are strings.\n [\"a\", [\"b\", \"c\"]], [[\"d\"], \"e\"] =\u003e [\"a\", [\"b\", \"cd\"], \"e\"]\n\n # Non-overlapping object fields are combined.\n {\"a\": \"1\"}, {\"b\": \"2\"} =\u003e {\"a\": \"1\", \"b\": 2\"}\n\n # Overlapping object fields are merged.\n {\"a\": \"1\"}, {\"a\": \"2\"} =\u003e {\"a\": \"12\"}\n\n # Examples of merging objects containing lists of strings.\n {\"a\": [\"1\"]}, {\"a\": [\"2\"]} =\u003e {\"a\": [\"12\"]}\n\nFor a more complete example, suppose a streaming SQL query is\nyielding a result set whose rows contain a single string\nfield. The following `PartialResultSet`s might be yielded:\n\n {\n \"metadata\": { ... }\n \"values\": [\"Hello\", \"W\"]\n \"chunked_value\": true\n \"resume_token\": \"Af65...\"\n }\n {\n \"values\": [\"orl\"]\n \"chunked_value\": true\n \"resume_token\": \"Bqp2...\"\n }\n {\n \"values\": [\"d\"]\n \"resume_token\": \"Zx1B...\"\n }\n\nThis sequence of `PartialResultSet`s encodes two rows, one\ncontaining the field value `\"Hello\"`, and a second containing the\nfield value `\"World\" = \"W\" + \"orl\" + \"d\"`.", + "items": { + "type": "any" + }, + "type": "array" }, - "displayName": { - "description": "The display name for the node.", + "metadata": { + "$ref": "ResultSetMetadata", + "description": "Metadata about the result set, such as row type information.\nOnly present in the first response." + } + }, + "id": "PartialResultSet" + }, + "ListOperationsResponse": { + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "childLinks": { - "description": "List of child node `index`es and their relationship to this parent.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "items": { - "$ref": "ChildLink" + "$ref": "Operation" }, "type": "array" } }, - "id": "PlanNode" + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, - "CreateInstanceMetadata": { - "description": "Metadata type for the operation returned by\nCreateInstance.", + "UpdateInstanceMetadata": { + "description": "Metadata type for the operation returned by\nUpdateInstance.", "type": "object", "properties": { + "startTime": { + "format": "google-datetime", + "description": "The time at which UpdateInstance\nrequest was received.", + "type": "string" + }, + "instance": { + "description": "The desired end state of the update.", + "$ref": "Instance" + }, "endTime": { "format": "google-datetime", "description": "The time at which this operation failed or was completed successfully.", @@ -1271,193 +1349,113 @@ "format": "google-datetime", "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.", "type": "string" + } + }, + "id": "UpdateInstanceMetadata" + }, + "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 ]" }, - "startTime": { - "format": "google-datetime", - "description": "The time at which the\nCreateInstance request was\nreceived.", + "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" + } + }, + "id": "ResultSetMetadata" + }, + "TransactionSelector": { + "properties": { + "id": { + "format": "byte", + "description": "Execute the read or SQL query in a previously-started transaction.", "type": "string" }, - "instance": { - "description": "The instance being created.", - "$ref": "Instance" + "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": "CreateInstanceMetadata" + "id": "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" }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.", - "type": "object", + "Mutation": { "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.\nNext ID: 4", + "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": { + "$ref": "Write", + "description": "Like insert, except that if the row already exists, it is\ndeleted, and the column values provided are inserted\ninstead. Unlike insert_or_update, this means any values not\nexplicitly written become `NULL`." + }, + "delete": { + "$ref": "Delete", + "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present." + }, + "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" + }, + "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`." + } + }, + "id": "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" + }, + "KeySet": { + "properties": { + "ranges": { + "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.", "items": { - "$ref": "AuditLogConfig" + "$ref": "KeyRange" }, "type": "array" }, - "exemptedMembers": { + "all": { + "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.", + "type": "boolean" + }, + "keys": { + "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.", "items": { - "type": "string" + "items": { + "type": "any" + }, + "type": "array" }, "type": "array" - }, - "service": { - "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.", - "type": "string" } }, - "id": "AuditConfig" + "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" }, - "ChildLink": { - "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.", + "GetDatabaseDdlResponse": { + "description": "The response for GetDatabaseDdl.", "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" - }, - "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" - }, - "childIndex": { - "format": "int32", - "description": "The node to which the link points.", - "type": "integer" - } - }, - "id": "ChildLink" - }, - "CloudAuditOptions": { - "description": "Write a Cloud Audit log", - "type": "object", - "properties": { - "logName": { - "description": "The log_name to populate in the Cloud Audit Record.", - "type": "string", - "enumDescriptions": [ - "Default. Should not be used.", - "Corresponds to \"cloudaudit.googleapis.com/activity\"", - "Corresponds to \"cloudaudit.googleapis.com/data_access\"" - ], - "enum": [ - "UNSPECIFIED_LOG_NAME", - "ADMIN_ACTIVITY", - "DATA_ACCESS" - ] - } - }, - "id": "CloudAuditOptions" - }, - "Expr": { - "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"", - "type": "object", - "properties": { - "location": { - "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.", - "type": "string" - }, - "title": { - "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.", - "type": "string" - }, - "description": { - "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.", - "type": "string" - }, - "expression": { - "description": "Textual representation of an expression in\n[Common Expression Language](http://go/api-expr) syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.", - "type": "string" - } - }, - "id": "Expr" - }, - "Delete": { - "description": "Arguments to delete operations.", - "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." - } - }, - "id": "Delete" - }, - "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.", - "items": { - "$ref": "InstanceConfig" - }, - "type": "array" - } - }, - "id": "ListInstanceConfigsResponse" - }, - "BeginTransactionRequest": { - "description": "The request for BeginTransaction.", - "type": "object", - "properties": { - "options": { - "description": "Required. Options for the new transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest" - }, - "CommitRequest": { - "description": "The request for Commit.", - "type": "object", - "properties": { - "mutations": { - "description": "The mutations to be executed when this transaction commits. All\nmutations are applied atomically, in the order they appear in\nthis list.", - "items": { - "$ref": "Mutation" - }, - "type": "array" - }, - "singleUseTransaction": { - "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead.", - "$ref": "TransactionOptions" - }, - "transactionId": { - "format": "byte", - "description": "Commit a previously-started transaction.", - "type": "string" - } - }, - "id": "CommitRequest" - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "statements": { + "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.", "items": { "type": "string" }, "type": "array" } }, - "id": "TestIamPermissionsResponse" - }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" + "id": "GetDatabaseDdlResponse" } }, "icons": { @@ -1469,14 +1467,14 @@ "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/spanner.data": { - "description": "View and manage the contents of your Spanner databases" - }, "https://www.googleapis.com/auth/spanner.admin": { "description": "Administer your Spanner databases" }, "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/spanner.data": { + "description": "View and manage the contents of your Spanner databases" } } } @@ -1490,615 +1488,181 @@ "resources": { "projects": { "resources": { - "instances": { + "instanceConfigs": { "methods": { - "getIamPolicy": { - "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "spanner.projects.instances.getIamPolicy" - }, - "patch": { - "request": { - "$ref": "UpdateInstanceRequest" - }, - "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.patch" - }, "get": { + "description": "Gets information about a particular instance configuration.", "response": { - "$ref": "Instance" + "$ref": "InstanceConfig" }, "parameterOrder": [ "name" ], "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", - "type": "string", - "required": true, - "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}", - "id": "spanner.projects.instances.get", - "path": "v1/{+name}", - "description": "Gets information about a particular instance." - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], "parameters": { - "resource": { - "description": "REQUIRED: The Cloud Spanner resource for which 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.", + "name": { + "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$", + "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", "location": "path" } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:testIamPermissions", - "id": "spanner.projects.instances.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "description": "Returns permissions that the caller has on the specified instance resource.\n\nAttempting this RPC on a non-existent Cloud Spanner instance resource will\nresult in a NOT_FOUND error if the user has `spanner.instances.list`\npermission on the containing Google Cloud Project. Otherwise returns an\nempty set of permissions." - }, - "delete": { - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "name": { - "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - } - } - }, - "list": { - "description": "Lists all instances in the given project.", - "response": { - "$ref": "ListInstancesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.", - "type": "integer" - }, - "parent": { - "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "filter": { - "location": "query", - "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * name\n * display_name\n * labels.key where key is the name of a label\n\nSome examples of using filters are:\n\n * name:* --\u003e The instance has a name.\n * name:Howl --\u003e The instance's name contains the string \"howl\".\n * name:HOWL --\u003e Equivalent to above.\n * NAME:howl --\u003e Equivalent to above.\n * labels.env:* --\u003e The instance has the label \"env\".\n * labels.env:dev --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * name:howl labels.env:dev --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances", - "id": "spanner.projects.instances.list", - "path": "v1/{+parent}/instances" - }, - "create": { - "flatPath": "v1/projects/{projectsId}/instances", - "id": "spanner.projects.instances.create", - "path": "v1/{+parent}/instances", - "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.", - "request": { - "$ref": "CreateInstanceRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ] - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on an instance resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.instances.setIamPolicy` on\nresource.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "resource": { - "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy", - "id": "spanner.projects.instances.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" - } - }, - "resources": { - "databases": { - "methods": { - "get": { - "description": "Gets the state of a Cloud Spanner database.", - "response": { - "$ref": "Database" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The name of the requested database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`.", - "type": "string", - "required": true, - "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}", - "id": "spanner.projects.instances.databases.get", - "path": "v1/{+name}" - }, - "dropDatabase": { - "httpMethod": "DELETE", - "parameterOrder": [ - "database" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "database": { - "location": "path", - "description": "Required. The database to be dropped.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" - } - }, - "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", - "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.", - "httpMethod": "PATCH", - "parameterOrder": [ - "database" - ], - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "database": { - "description": "Required. The database to update.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", - "location": "path" - } - } - }, - "testIamPermissions": { - "description": "Returns permissions that the caller has on the specified database resource.\n\nAttempting this RPC on a non-existent Cloud Spanner database will result in\na NOT_FOUND error if the user has `spanner.databases.list` permission on\nthe containing Cloud Spanner instance. Otherwise returns an empty set of\npermissions.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "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.", - "type": "string", - "required": true, - "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}:testIamPermissions", - "id": "spanner.projects.instances.databases.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" - }, - "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", - "parameters": { - "database": { - "location": "path", - "description": "Required. The database whose schema we wish to get.", - "type": "string", - "required": true, - "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}/ddl", - "id": "spanner.projects.instances.databases.getDdl", - "path": "v1/{+database}/ddl" - }, - "list": { - "description": "Lists Cloud Spanner databases.", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListDatabasesResponse" - }, - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "pageSize": { - "format": "int32", - "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$" - }, - "pageToken": { - "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", - "id": "spanner.projects.instances.databases.list", - "path": "v1/{+parent}/databases" - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy", - "id": "spanner.projects.instances.databases.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" + }, + "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}", + "id": "spanner.projects.instanceConfigs.get", + "path": "v1/{+name}" + }, + "list": { + "response": { + "$ref": "ListInstanceConfigsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", + "type": "string" }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", - "id": "spanner.projects.instances.databases.create", - "path": "v1/{+parent}/databases", - "description": "Creates a new Cloud Spanner database and starts to prepare it for serving.\nThe returned long-running operation will\nhave a name of the format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track preparation of the database. The\nmetadata field type is\nCreateDatabaseMetadata. The\nresponse field type is\nDatabase, if successful.", - "request": { - "$ref": "CreateDatabaseRequest" - } + "pageSize": { + "location": "query", + "format": "int32", + "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.", + "type": "integer" }, - "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.", - "type": "string", - "required": true, - "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", - "id": "spanner.projects.instances.databases.getIamPolicy", - "path": "v1/{+resource}: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" - } + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`.", + "type": "string", + "required": true } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "flatPath": "v1/projects/{projectsId}/instanceConfigs", + "id": "spanner.projects.instanceConfigs.list", + "path": "v1/{+parent}/instanceConfigs", + "description": "Lists the supported instance configurations for a given project." + } + } + }, + "instances": { + "resources": { + "databases": { "resources": { "sessions": { "methods": { - "get": { + "executeStreamingSql": { + "id": "spanner.projects.instances.databases.sessions.executeStreamingSql", + "path": "v1/{+session}:executeStreamingSql", + "request": { + "$ref": "ExecuteSqlRequest" + }, + "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.", "response": { - "$ref": "Session" + "$ref": "PartialResultSet" }, "parameterOrder": [ - "name" + "session" ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The name of the session to retrieve.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" - } - }, + "httpMethod": "POST", "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}", - "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." + "parameters": { + "session": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path", + "description": "Required. The session in which the SQL query should be performed.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql" }, "commit": { - "response": { - "$ref": "CommitResponse" + "request": { + "$ref": "CommitRequest" }, + "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session.", + "httpMethod": "POST", "parameterOrder": [ "session" ], - "httpMethod": "POST", + "response": { + "$ref": "CommitResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" ], "parameters": { "session": { - "location": "path", "description": "Required. The session in which the transaction to be committed is running.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path" } }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit", - "id": "spanner.projects.instances.databases.sessions.commit", "path": "v1/{+session}:commit", - "request": { - "$ref": "CommitRequest" - }, - "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session." + "id": "spanner.projects.instances.databases.sessions.commit" }, - "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" - }, + "beginTransaction": { "response": { - "$ref": "PartialResultSet" + "$ref": "Transaction" }, "parameterOrder": [ "session" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ], "parameters": { "session": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "location": "path", - "description": "Required. The session in which the SQL query should be performed.", + "description": "Required. The session in which the transaction runs.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "required": true } }, - "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}:executeStreamingSql", - "id": "spanner.projects.instances.databases.sessions.executeStreamingSql", - "path": "v1/{+session}:executeStreamingSql" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:beginTransaction", + "id": "spanner.projects.instances.databases.sessions.beginTransaction", + "path": "v1/{+session}:beginTransaction", + "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." }, "delete": { - "description": "Ends a session, releasing server resources associated with it.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "parameters": { "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "location": "path", "description": "Required. The name of the session to delete.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "required": true } }, "scopes": [ @@ -2106,16 +1670,19 @@ "https://www.googleapis.com/auth/spanner.data" ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", + "id": "spanner.projects.instances.databases.sessions.delete", "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.sessions.delete" + "description": "Ends a session, releasing server resources associated with it." }, - "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.", + "executeSql": { + "id": "spanner.projects.instances.databases.sessions.executeSql", + "path": "v1/{+session}:executeSql", + "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.", "request": { - "$ref": "BeginTransactionRequest" + "$ref": "ExecuteSqlRequest" }, "response": { - "$ref": "Transaction" + "$ref": "ResultSet" }, "parameterOrder": [ "session" @@ -2123,162 +1690,157 @@ "httpMethod": "POST", "parameters": { "session": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "location": "path", - "description": "Required. The session in which the transaction runs.", + "description": "Required. The session in which the SQL query should be performed.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "required": true } }, "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", - "id": "spanner.projects.instances.databases.sessions.beginTransaction", - "path": "v1/{+session}:beginTransaction" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql" }, - "executeSql": { + "rollback": { "response": { - "$ref": "ResultSet" + "$ref": "Empty" }, "parameterOrder": [ "session" ], "httpMethod": "POST", - "parameters": { - "session": { - "location": "path", - "description": "Required. The session in which the SQL query should be performed.", - "type": "string", - "required": true, - "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}:executeSql", - "id": "spanner.projects.instances.databases.sessions.executeSql", - "path": "v1/{+session}:executeSql", - "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.", - "request": { - "$ref": "ExecuteSqlRequest" - } - }, - "streamingRead": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}: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" - }, - "response": { - "$ref": "PartialResultSet" - }, - "parameterOrder": [ - "session" - ], - "httpMethod": "POST", "parameters": { "session": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "location": "path", - "description": "Required. The session in which the read should be performed.", + "description": "Required. The session in which the transaction to roll back is running.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ] - }, - "rollback": { "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback", - "path": "v1/{+session}:rollback", "id": "spanner.projects.instances.databases.sessions.rollback", - "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`.", + "path": "v1/{+session}:rollback", "request": { "$ref": "RollbackRequest" }, + "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`." + }, + "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" + }, "httpMethod": "POST", "parameterOrder": [ "session" ], "response": { - "$ref": "Empty" + "$ref": "PartialResultSet" }, "parameters": { "session": { - "location": "path", - "description": "Required. The session in which the transaction to roll back is running.", + "description": "Required. The session in which the read should be performed.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" - ] + ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead", + "path": "v1/{+session}:streamingRead", + "id": "spanner.projects.instances.databases.sessions.streamingRead" }, "create": { - "description": "Creates a new session. A session can be used to perform\ntransactions that read and/or modify data in a Cloud Spanner database.\nSessions are meant to be reused for many consecutive\ntransactions.\n\nSessions can only execute one transaction at a time. To execute\nmultiple concurrent read-write/write-only transactions, create\nmultiple sessions. Note that standalone reads and queries use a\ntransaction internally, and count toward the one transaction\nlimit.\n\nCloud Spanner limits the number of sessions that can exist at any given\ntime; thus, it is a good idea to delete idle and/or unneeded sessions.\nAside from explicit deletes, Cloud Spanner can delete sessions for which no\noperations are sent for more than an hour. If a session is deleted,\nrequests to it return `NOT_FOUND`.\n\nIdle sessions can be kept alive by sending a trivial SQL query\nperiodically, e.g., `\"SELECT 1\"`.", - "response": { - "$ref": "Session" - }, + "id": "spanner.projects.instances.databases.sessions.create", + "path": "v1/{+database}/sessions", + "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\"`.", "parameterOrder": [ "database" ], "httpMethod": "POST", + "response": { + "$ref": "Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ], "parameters": { "database": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path", "description": "Required. The database in which the new session is created.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" + "required": true } }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions" + }, + "read": { + "httpMethod": "POST", + "parameterOrder": [ + "session" + ], + "response": { + "$ref": "ResultSet" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", - "id": "spanner.projects.instances.databases.sessions.create", - "path": "v1/{+database}/sessions" - }, - "read": { + "parameters": { + "session": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path", + "description": "Required. The session in which the read should be performed.", + "type": "string", + "required": true + } + }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:read", - "id": "spanner.projects.instances.databases.sessions.read", "path": "v1/{+session}:read", + "id": "spanner.projects.instances.databases.sessions.read", "request": { "$ref": "ReadRequest" }, - "description": "Reads rows from the database using key lookups and scans, as a\nsimple key/value style alternative to\nExecuteSql. This method cannot be used to\nreturn a result set larger than 10 MiB; if the read matches more\ndata than that, the read fails with a `FAILED_PRECONDITION`\nerror.\n\nReads inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be yielded in streaming fashion by calling\nStreamingRead instead.", + "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." + }, + "get": { "response": { - "$ref": "ResultSet" + "$ref": "Session" }, "parameterOrder": [ - "session" + "name" ], - "httpMethod": "POST", + "httpMethod": "GET", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path", + "description": "Required. The name of the session to retrieve.", + "type": "string", + "required": true + } + }, "scopes": [ "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.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" - } - } + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", + "id": "spanner.projects.instances.databases.sessions.get", + "path": "v1/{+name}", + "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." } } }, @@ -2286,63 +1848,64 @@ "methods": { "cancel": { "httpMethod": "POST", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], "parameters": { "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", "location": "path", "description": "The name of the operation resource to be cancelled.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$" + "required": true } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel", "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`." }, "delete": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", - "id": "spanner.projects.instances.databases.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", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], "parameters": { "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", "location": "path", "description": "The name of the operation resource to be deleted.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$" + "required": true } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", + "path": "v1/{+name}", + "id": "spanner.projects.instances.databases.operations.delete" }, "get": { - "parameterOrder": [ - "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.", "response": { "$ref": "Operation" }, + "parameterOrder": [ + "name" + ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -2350,17 +1913,16 @@ ], "parameters": { "name": { - "location": "path", "description": "The name of the operation resource.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", + "location": "path" } }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", "id": "spanner.projects.instances.databases.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." + "path": "v1/{+name}" }, "list": { "response": { @@ -2375,12 +1937,6 @@ "https://www.googleapis.com/auth/spanner.admin" ], "parameters": { - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - }, "filter": { "description": "The standard list filter.", "type": "string", @@ -2392,11 +1948,17 @@ "location": "query" }, "name": { - "location": "path", "description": "The name of the operation's parent resource.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$", + "location": "path" + }, + "pageSize": { + "format": "int32", + "description": "The standard list page size.", + "type": "integer", + "location": "query" } }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations", @@ -2406,93 +1968,253 @@ } } } - } - }, - "operations": { + }, "methods": { + "getDdl": { + "response": { + "$ref": "GetDatabaseDdlResponse" + }, + "parameterOrder": [ + "database" + ], + "httpMethod": "GET", + "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.", + "type": "string", + "required": true, + "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.", + "httpMethod": "GET", + "response": { + "$ref": "ListDatabasesResponse" + }, + "parameterOrder": [ + "parent" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "parent": { + "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/instances/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.", + "type": "integer" + } + }, + "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": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "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.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy", + "id": "spanner.projects.instances.databases.setIamPolicy", + "path": "v1/{+resource}: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" + } + }, + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/instances/[^/]+$", + "location": "path", + "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", + "id": "spanner.projects.instances.databases.create", + "path": "v1/{+parent}/databases", + "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": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy", + "id": "spanner.projects.instances.databases.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "description": "Gets the access control policy for a database resource. Returns an empty\npolicy if a database exists but does not have a policy set.\n\nAuthorization requires `spanner.databases.getIamPolicy` permission on\nresource." + }, "get": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", - "id": "spanner.projects.instances.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": "spanner.projects.instances.databases.get", + "description": "Gets the state of a Cloud Spanner database.", + "httpMethod": "GET", "response": { - "$ref": "Operation" + "$ref": "Database" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], "parameters": { "name": { - "description": "The name of the operation resource.", + "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`.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", - "location": "path" + "required": true } }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}" + }, + "dropDatabase": { + "description": "Drops (aka deletes) a Cloud Spanner database.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "database" + ], + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" - ] - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.", - "httpMethod": "GET", - "parameterOrder": [ - "name" ], + "parameters": { + "database": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "location": "path", + "description": "Required. The database to be dropped.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", + "id": "spanner.projects.instances.databases.dropDatabase", + "path": "v1/{+database}" + }, + "updateDdl": { "response": { - "$ref": "ListOperationsResponse" + "$ref": "Operation" }, + "parameterOrder": [ + "database" + ], + "httpMethod": "PATCH", "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "name": { + "database": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path", - "description": "The name of the operation's parent resource.", + "description": "Required. The database to update.", "type": "string", - "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/operations$" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The standard list page size.", - "type": "integer" + "required": true } }, "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" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/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" + } }, - "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`.", + "testIamPermissions": { "response": { - "$ref": "Empty" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ - "name" + "resource" ], "httpMethod": "POST", "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", + "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.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path" } }, @@ -2500,9 +2222,43 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions", + "id": "spanner.projects.instances.databases.testIamPermissions", + "path": "v1/{+resource}: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" + } + } + } + }, + "operations": { + "methods": { + "cancel": { "id": "spanner.projects.instances.operations.cancel", - "path": "v1/{+name}: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`.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel" }, "delete": { "httpMethod": "DELETE", @@ -2529,28 +2285,180 @@ "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`." + }, + "get": { + "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.", + "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/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": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/instances/[^/]+/operations$", + "location": "path" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations", + "path": "v1/{+name}", + "id": "spanner.projects.instances.operations.list" + } + } + } + }, + "methods": { + "create": { + "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.", + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/projects/{projectsId}/instances" + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "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.", + "type": "string", + "required": true, + "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" + } + }, + "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.", + "type": "string", + "required": true, + "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}:getIamPolicy", + "id": "spanner.projects.instances.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.", + "request": { + "$ref": "GetIamPolicyRequest" } - } - } - }, - "instanceConfigs": { - "methods": { + }, "get": { - "description": "Gets information about a particular instance configuration.", - "httpMethod": "GET", + "response": { + "$ref": "Instance" + }, "parameterOrder": [ "name" ], - "response": { - "$ref": "InstanceConfig" - }, + "httpMethod": "GET", "parameters": { "name": { - "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", + "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", "type": "string", "required": true, - "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", + "pattern": "^projects/[^/]+/instances/[^/]+$", "location": "path" } }, @@ -2558,18 +2466,102 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "id": "spanner.projects.instances.get", + "path": "v1/{+name}", + "description": "Gets information about a particular instance." + }, + "patch": { + "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name.", + "request": { + "$ref": "UpdateInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "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.", + "type": "string", + "required": true + } + }, + "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.patch", + "path": "v1/{+name}" + }, + "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.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameters": { + "resource": { + "pattern": "^projects/[^/]+/instances/[^/]+$", + "location": "path", + "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.", + "type": "string", + "required": true + } + }, + "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" + }, + "delete": { + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "name": { + "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`", + "type": "string", + "required": true, + "pattern": "^projects/[^/]+/instances/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "id": "spanner.projects.instances.delete", "path": "v1/{+name}", - "id": "spanner.projects.instanceConfigs.get" + "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": { - "flatPath": "v1/projects/{projectsId}/instanceConfigs", - "path": "v1/{+parent}/instanceConfigs", - "id": "spanner.projects.instanceConfigs.list", - "description": "Lists the supported instance configurations for a given project.", + "path": "v1/{+parent}/instances", + "id": "spanner.projects.instances.list", + "description": "Lists all instances in the given project.", "httpMethod": "GET", "response": { - "$ref": "ListInstanceConfigsResponse" + "$ref": "ListInstancesResponse" }, "parameterOrder": [ "parent" @@ -2577,27 +2569,33 @@ "parameters": { "pageToken": { "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", "type": "string" }, "pageSize": { "format": "int32", - "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.", + "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.", "type": "integer", "location": "query" }, "parent": { - "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`.", + "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.", "type": "string", "required": true, "pattern": "^projects/[^/]+$", "location": "path" + }, + "filter": { + "location": "query", + "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * name\n * display_name\n * labels.key where key is the name of a label\n\nSome examples of using filters are:\n\n * name:* --\u003e The instance has a name.\n * name:Howl --\u003e The instance's name contains the string \"howl\".\n * name:HOWL --\u003e Equivalent to above.\n * NAME:howl --\u003e Equivalent to above.\n * labels.env:* --\u003e The instance has the label \"env\".\n * labels.env:dev --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * name:howl labels.env:dev --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".", + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" - ] + ], + "flatPath": "v1/projects/{projectsId}/instances" } } } @@ -2605,20 +2603,64 @@ } }, "parameters": { - "key": { + "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": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], "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.", + "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": { "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" + "type": "string", + "location": "query" }, "pp": { "location": "query", @@ -2626,70 +2668,28 @@ "default": "true", "type": "boolean" }, - "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" }, + "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", "description": "Returns response with indentations and line breaks.", "default": "true", "type": "boolean" - }, - "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": { - "location": "query", - "description": "JSONP", - "type": "string" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" } - } + }, + "version": "v1", + "baseUrl": "https://spanner.googleapis.com/" } diff --git a/DiscoveryJson/speech_v1.json b/DiscoveryJson/speech_v1.json index c0cf8cc516..487dbe90b5 100644 --- a/DiscoveryJson/speech_v1.json +++ b/DiscoveryJson/speech_v1.json @@ -1,263 +1,4 @@ { - "resources": { - "operations": { - "methods": { - "delete": { - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "type": "string", - "required": true, - "pattern": "^[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/operations/{+name}", - "id": "speech.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" - ] - }, - "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": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/operations/{+name}", - "id": "speech.operations.get" - }, - "list": { - "parameters": { - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "name": { - "location": "query", - "description": "The name of the operation's parent resource.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "The standard list page size.", - "type": "integer", - "location": "query" - }, - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations", - "id": "speech.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.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET" - }, - "cancel": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}:cancel", - "id": "speech.operations.cancel", - "path": "v1/operations/{+name}:cancel", - "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.", - "request": { - "$ref": "CancelOperationRequest" - } - } - } - }, - "speech": { - "methods": { - "recognize": { - "request": { - "$ref": "RecognizeRequest" - }, - "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", - "response": { - "$ref": "RecognizeResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/speech:recognize", - "id": "speech.speech.recognize", - "path": "v1/speech:recognize" - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/speech:longrunningrecognize" - } - } - } - }, - "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": { - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "default": "true", - "type": "boolean" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean", - "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" - } - }, - "version": "v1", - "baseUrl": "https://speech.googleapis.com/", - "servicePath": "", - "description": "Converts audio to text by applying powerful neural network models.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20170705", - "documentationLink": "https://cloud.google.com/speech/", - "id": "speech:v1", - "discoveryVersion": "v1", "version_module": "True", "schemas": { "RecognitionAudio": { @@ -277,19 +18,19 @@ "id": "RecognitionAudio" }, "LongRunningRecognizeRequest": { + "id": "LongRunningRecognizeRequest", "description": "The top-level message sent by the client for the `LongRunningRecognize`\nmethod.", "type": "object", "properties": { "audio": { - "$ref": "RecognitionAudio", - "description": "*Required* The audio data to be recognized." + "description": "*Required* The audio data to be recognized.", + "$ref": "RecognitionAudio" }, "config": { "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.", "$ref": "RecognitionConfig" } - }, - "id": "LongRunningRecognizeRequest" + } }, "RecognizeResponse": { "id": "RecognizeResponse", @@ -306,13 +47,12 @@ } }, "CancelOperationRequest": { - "id": "CancelOperationRequest", "description": "The request message for Operations.CancelOperation.", "type": "object", - "properties": {} + "properties": {}, + "id": "CancelOperationRequest" }, "Operation": { - "id": "Operation", "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { @@ -344,32 +84,17 @@ "type": "any" } } - } + }, + "id": "Operation" }, "RecognitionConfig": { "description": "Provides information to the recognizer that specifies how to process the\nrequest.", "type": "object", "properties": { - "maxAlternatives": { - "format": "int32", - "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.", - "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" - }, - "speechContexts": { - "description": "*Optional* A means to provide context to assist the speech recognition.", - "items": { - "$ref": "SpeechContext" - }, - "type": "array" - }, "encoding": { "enumDescriptions": [ "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.", @@ -394,24 +119,34 @@ "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", "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" + }, + "speechContexts": { + "description": "*Optional* A means to provide context to assist the speech recognition.", + "items": { + "$ref": "SpeechContext" + }, + "type": "array" + }, "sampleRateHertz": { "format": "int32", "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).", "type": "integer" + }, + "maxAlternatives": { + "format": "int32", + "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.", + "type": "integer" } }, "id": "RecognitionConfig" }, "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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" @@ -419,21 +154,27 @@ "details": { "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.", "items": { + "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - }, - "type": "object" + } }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } - } + }, + "id": "Status" }, "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" }, "RecognizeRequest": { "description": "The top-level message sent by the client for the `Recognize` method.", @@ -450,17 +191,19 @@ }, "id": "RecognizeRequest" }, - "SpeechContext": { - "id": "SpeechContext", - "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", + "SpeechRecognitionAlternative": { + "id": "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).", - "items": { - "type": "string" - }, - "type": "array" + "transcript": { + "description": "*Output-only* Transcript text representing the words that the user spoke.", + "type": "string" + }, + "confidence": { + "format": "float", + "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.", + "type": "number" } } }, @@ -482,21 +225,19 @@ } } }, - "SpeechRecognitionAlternative": { - "description": "Alternative hypotheses (a.k.a. n-best list).", + "SpeechContext": { + "id": "SpeechContext", + "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", "type": "object", "properties": { - "transcript": { - "description": "*Output-only* Transcript text representing the words that the user spoke.", - "type": "string" - }, - "confidence": { - "format": "float", - "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.", - "type": "number" + "phrases": { + "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).", + "items": { + "type": "string" + }, + "type": "array" } - }, - "id": "SpeechRecognitionAlternative" + } }, "SpeechRecognitionResult": { "description": "A speech recognition result corresponding to a portion of the audio.", @@ -515,8 +256,8 @@ }, "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": "Speech", "auth": { @@ -533,5 +274,264 @@ "name": "speech", "batchPath": "batch", "title": "Google Cloud Speech API", - "ownerName": "Google" + "ownerName": "Google", + "resources": { + "operations": { + "methods": { + "delete": { + "path": "v1/operations/{+name}", + "id": "speech.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" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "type": "string", + "required": true, + "pattern": "^[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/operations/{operationsId}" + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^[^/]+$", + "location": "path", + "description": "The name of the operation resource.", + "type": "string", + "required": true + } + }, + "flatPath": "v1/operations/{operationsId}", + "id": "speech.operations.get", + "path": "v1/operations/{+name}" + }, + "list": { + "path": "v1/operations", + "id": "speech.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", + "parameterOrder": [], + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "name": { + "location": "query", + "description": "The name of the operation's parent resource.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The standard list page size.", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/operations" + }, + "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "pattern": "^[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/operations/{operationsId}:cancel", + "path": "v1/operations/{+name}:cancel", + "id": "speech.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" + } + } + } + }, + "speech": { + "methods": { + "recognize": { + "response": { + "$ref": "RecognizeResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "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" + } + }, + "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" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/speech:longrunningrecognize" + } + } + } + }, + "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.", + "default": "true", + "type": "boolean", + "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.", + "default": "true", + "type": "boolean" + }, + "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": { + "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": "v1", + "baseUrl": "https://speech.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Converts audio to text by applying powerful neural network models.", + "servicePath": "", + "basePath": "", + "id": "speech:v1", + "revision": "20170705", + "documentationLink": "https://cloud.google.com/speech/", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/speech_v1beta1.json b/DiscoveryJson/speech_v1beta1.json index 7ed2c031db..8d8789d867 100644 --- a/DiscoveryJson/speech_v1beta1.json +++ b/DiscoveryJson/speech_v1beta1.json @@ -1,15 +1,4 @@ { - "canonicalName": "Speech", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://speech.googleapis.com/", "ownerDomain": "google.com", "name": "speech", "batchPath": "batch", @@ -18,87 +7,68 @@ "resources": { "operations": { "methods": { - "cancel": { - "flatPath": "v1beta1/operations/{operationsId}:cancel", - "path": "v1beta1/operations/{+name}:cancel", - "id": "speech.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`.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], + "delete": { + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, + "parameterOrder": [ + "name" + ], "parameters": { "name": { "pattern": "^[^/]+$", "location": "path", - "description": "The name of the operation resource to be cancelled.", + "description": "The name of the operation resource to be deleted.", "type": "string", "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.", - "response": { - "$ref": "Empty" - }, - "httpMethod": "DELETE", - "parameterOrder": [ - "name" ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "type": "string", - "required": true, - "pattern": "^[^/]+$", - "location": "path", - "description": "The name of the operation resource to be deleted." - } - }, "flatPath": "v1beta1/operations/{operationsId}", + "path": "v1beta1/operations/{+name}", "id": "speech.operations.delete", - "path": "v1beta1/operations/{+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`." }, "get": { - "id": "speech.operations.get", "path": "v1beta1/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.", + "httpMethod": "GET", "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { + "pattern": "^[^/]+$", "location": "path", "description": "The name of the operation resource.", "type": "string", - "required": true, - "pattern": "^[^/]+$" + "required": true } }, "flatPath": "v1beta1/operations/{operationsId}" }, "list": { + "id": "speech.operations.list", + "path": "v1beta1/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.", + "parameterOrder": [], + "httpMethod": "GET", "response": { "$ref": "ListOperationsResponse" }, - "parameterOrder": [], - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "pageToken": { "location": "query", @@ -106,112 +76,97 @@ "type": "string" }, "name": { - "location": "query", "description": "The name of the operation's parent resource.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "location": "query", "format": "int32", "description": "The standard list page size.", - "type": "integer" + "type": "integer", + "location": "query" }, "filter": { - "type": "string", "location": "query", - "description": "The standard list filter." + "description": "The standard list filter.", + "type": "string" + } + }, + "flatPath": "v1beta1/operations" + }, + "cancel": { + "parameters": { + "name": { + "pattern": "^[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "type": "string", + "required": true } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/operations", - "id": "speech.operations.list", - "path": "v1beta1/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." + "flatPath": "v1beta1/operations/{operationsId}:cancel", + "path": "v1beta1/operations/{+name}:cancel", + "id": "speech.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`.", + "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ] } } }, "speech": { "methods": { "asyncrecognize": { + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" - ], - "flatPath": "v1beta1/speech:asyncrecognize", - "path": "v1beta1/speech:asyncrecognize", - "id": "speech.speech.asyncrecognize" + "parameterOrder": [], + "httpMethod": "POST" }, "syncrecognize": { - "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.", + "path": "v1beta1/speech:syncrecognize", "request": { "$ref": "SyncRecognizeRequest" }, - "httpMethod": "POST", - "parameterOrder": [], + "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", "response": { "$ref": "SyncRecognizeResponse" }, - "parameters": {}, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "parameters": {}, + "flatPath": "v1beta1/speech:syncrecognize" } } } }, "parameters": { - "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" + "type": "string", + "location": "query" }, "key": { "location": "query", @@ -219,30 +174,30 @@ "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.", "default": "true", - "type": "boolean" + "type": "boolean", + "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", - "location": "query" + "type": "string" }, "prettyPrint": { "location": "query", @@ -250,15 +205,49 @@ "default": "true", "type": "boolean" }, - "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": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "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" } }, "version": "v1beta1", @@ -268,30 +257,23 @@ "servicePath": "", "basePath": "", "id": "speech:v1beta1", - "revision": "20170705", "documentationLink": "https://cloud.google.com/speech/", + "revision": "20170705", "discoveryVersion": "v1", "version_module": "True", "schemas": { "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": { @@ -302,13 +284,23 @@ "type": "object" }, "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`.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } } - }, - "id": "Operation" + } }, "RecognitionConfig": { + "id": "RecognitionConfig", + "description": "Provides information to the recognizer that specifies how to process the\nrequest.", + "type": "object", "properties": { "maxAlternatives": { "format": "int32", @@ -325,14 +317,16 @@ "type": "string" }, "profanityFilter": { - "type": "boolean", - "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." + "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": { - "$ref": "SpeechContext", - "description": "*Optional* A means to provide context to assist the speech recognition." + "description": "*Optional* A means to provide context to assist the speech recognition.", + "$ref": "SpeechContext" }, "encoding": { + "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", + "type": "string", "enumDescriptions": [ "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.", "Uncompressed 16-bit signed little-endian samples (Linear PCM).\nThis is the only encoding that may be used by `AsyncRecognize`.", @@ -348,68 +342,63 @@ "MULAW", "AMR", "AMR_WB" - ], - "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.", - "type": "string" + ] } - }, - "id": "RecognitionConfig", - "description": "Provides information to the recognizer that specifies how to process the\nrequest.", - "type": "object" + } }, "SyncRecognizeRequest": { + "id": "SyncRecognizeRequest", "description": "The top-level message sent by the client for the `SyncRecognize` method.", "type": "object", "properties": { "audio": { - "$ref": "RecognitionAudio", - "description": "*Required* The audio data to be recognized." + "description": "*Required* The audio data to be recognized.", + "$ref": "RecognitionAudio" }, "config": { - "$ref": "RecognitionConfig", - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." - } - }, - "id": "SyncRecognizeRequest" - }, - "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.", - "items": { - "$ref": "SpeechRecognitionResult" - }, - "type": "array" + "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.", + "$ref": "RecognitionConfig" } - }, - "id": "SyncRecognizeResponse" + } }, "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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." + "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 will be a\ncommon set of message types for APIs to use.", "items": { + "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - }, - "type": "object" + } }, - "type": "array", - "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use." + "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" + } + }, + "id": "Status" + }, + "SyncRecognizeResponse": { + "id": "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.", + "items": { + "$ref": "SpeechRecognitionResult" + }, + "type": "array" } } }, @@ -419,25 +408,24 @@ "type": "object", "properties": {} }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "items": { - "$ref": "Operation" - }, - "type": "array" - }, - "nextPageToken": { - "description": "The standard List next-page token.", + "transcript": { + "description": "*Output-only* Transcript text representing the words that the user spoke.", "type": "string" + }, + "confidence": { + "format": "float", + "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", + "type": "number" } }, - "id": "ListOperationsResponse" + "id": "SpeechRecognitionAlternative" }, "SpeechContext": { + "id": "SpeechContext", "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", "type": "object", "properties": { @@ -448,24 +436,25 @@ }, "type": "array" } - }, - "id": "SpeechContext" + } }, - "SpeechRecognitionAlternative": { - "description": "Alternative hypotheses (a.k.a. n-best list).", + "ListOperationsResponse": { + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { - "confidence": { - "format": "float", - "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", - "type": "number" - }, - "transcript": { - "description": "*Output-only* Transcript text representing the words that the user spoke.", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" } - }, - "id": "SpeechRecognitionAlternative" + } }, "SpeechRecognitionResult": { "description": "A speech recognition result corresponding to a portion of the audio.", @@ -482,6 +471,9 @@ "id": "SpeechRecognitionResult" }, "AsyncRecognizeRequest": { + "id": "AsyncRecognizeRequest", + "description": "The top-level message sent by the client for the `AsyncRecognize` method.", + "type": "object", "properties": { "audio": { "$ref": "RecognitionAudio", @@ -491,10 +483,7 @@ "$ref": "RecognitionConfig", "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." } - }, - "id": "AsyncRecognizeRequest", - "description": "The top-level message sent by the client for the `AsyncRecognize` method.", - "type": "object" + } }, "RecognitionAudio": { "description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content).", @@ -506,16 +495,27 @@ "type": "string" }, "uri": { - "type": "string", - "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)." + "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" } }, "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": "Speech", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } }, - "protocol": "rest" + "rootUrl": "https://speech.googleapis.com/" } diff --git a/DiscoveryJson/storagetransfer_v1.json b/DiscoveryJson/storagetransfer_v1.json index 33016d1f9e..081d20b90c 100644 --- a/DiscoveryJson/storagetransfer_v1.json +++ b/DiscoveryJson/storagetransfer_v1.json @@ -1,11 +1,4 @@ { - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "version": "v1", - "baseUrl": "https://storagetransfer.googleapis.com/", "auth": { "oauth2": { "scopes": { @@ -23,229 +16,226 @@ "ownerDomain": "google.com", "name": "storagetransfer", "batchPath": "batch", - "id": "storagetransfer:v1", + "revision": "20170717", "documentationLink": "https://cloud.google.com/storage/transfer", - "revision": "20170707", + "id": "storagetransfer:v1", "title": "Google Storage Transfer API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "version_module": "True", "resources": { "googleServiceAccounts": { "methods": { "get": { - "path": "v1/googleServiceAccounts/{projectId}", + "flatPath": "v1/googleServiceAccounts/{projectId}", "id": "storagetransfer.googleServiceAccounts.get", + "path": "v1/googleServiceAccounts/{projectId}", "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.", - "httpMethod": "GET", "response": { "$ref": "GoogleServiceAccount" }, "parameterOrder": [ "projectId" ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "projectId": { + "description": "The ID of the Google Cloud Platform Console project that the Google service\naccount is associated with.\nRequired.", "type": "string", "required": true, - "location": "path", - "description": "The ID of the Google Cloud Platform Console project that the Google service\naccount is associated with.\nRequired." + "location": "path" } - }, - "flatPath": "v1/googleServiceAccounts/{projectId}" + } } } }, "transferOperations": { "methods": { - "get": { + "delete": { "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "location": "path", - "description": "The name of the operation resource.", + "description": "The name of the operation resource to be deleted.", "type": "string", "required": true, - "pattern": "^transferOperations/.+$" + "pattern": "^transferOperations/.+$", + "location": "path" } }, "flatPath": "v1/transferOperations/{transferOperationsId}", - "id": "storagetransfer.transferOperations.get", + "id": "storagetransfer.transferOperations.delete", "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." + "description": "This method is not supported and the server returns `UNIMPLEMENTED`." }, - "pause": { - "id": "storagetransfer.transferOperations.pause", - "path": "v1/{+name}:pause", - "description": "Pauses a transfer operation.", - "request": { - "$ref": "PauseTransferOperationRequest" - }, + "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": "Empty" + "$ref": "ListOperationsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "pageToken": { + "description": "The list page token.", + "type": "string", + "location": "query" + }, "name": { - "location": "path", - "description": "The name of the transfer operation.\nRequired.", + "description": "The value `transferOperations`.", "type": "string", "required": true, - "pattern": "^transferOperations/.+$" + "pattern": "^transferOperations$", + "location": "path" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "The list page size. The max allowed value is 256.", + "type": "integer" + }, + "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" } }, + "flatPath": "v1/transferOperations", + "id": "storagetransfer.transferOperations.list", + "path": "v1/{+name}" + }, + "resume": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/transferOperations/{transferOperationsId}:pause" - }, - "delete": { "parameters": { "name": { - "pattern": "^transferOperations/.+$", "location": "path", - "description": "The name of the operation resource to be deleted.", + "description": "The name of the transfer operation.\nRequired.", "type": "string", - "required": true + "required": true, + "pattern": "^transferOperations/.+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations/{transferOperationsId}", - "id": "storagetransfer.transferOperations.delete", - "path": "v1/{+name}", - "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", - "response": { - "$ref": "Empty" + "flatPath": "v1/transferOperations/{transferOperationsId}:resume", + "path": "v1/{+name}:resume", + "id": "storagetransfer.transferOperations.resume", + "request": { + "$ref": "ResumeTransferOperationRequest" }, + "description": "Resumes a transfer operation that is paused.", + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "DELETE" + "response": { + "$ref": "Empty" + } }, - "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.", - "httpMethod": "GET", + "cancel": { "response": { - "$ref": "ListOperationsResponse" + "$ref": "Empty" }, "parameterOrder": [ "name" ], + "httpMethod": "POST", "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "The list page size. The max allowed value is 256.", - "type": "integer" - }, - "filter": { - "location": "query", - "description": "A list of query parameters specified as JSON text in the form of {\\\"project_id\\\" : \\\"my_project_id\\\", \\\"job_names\\\" : [\\\"jobid1\\\", \\\"jobid2\\\",...], \\\"operation_names\\\" : [\\\"opid1\\\", \\\"opid2\\\",...], \\\"transfer_statuses\\\":[\\\"status1\\\", \\\"status2\\\",...]}. Since `job_names`, `operation_names`, and `transfer_statuses` support multiple values, they must be specified with array notation. `job_names`, `operation_names`, and `transfer_statuses` are optional.", - "type": "string" - }, - "pageToken": { - "description": "The list page token.", - "type": "string", - "location": "query" - }, "name": { "type": "string", "required": true, - "pattern": "^transferOperations$", + "pattern": "^transferOperations/.+$", "location": "path", - "description": "The value `transferOperations`." + "description": "The name of the operation resource to be cancelled." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/transferOperations" + "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", + "id": "storagetransfer.transferOperations.cancel", + "path": "v1/{+name}:cancel", + "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation." }, - "resume": { + "get": { "response": { - "$ref": "Empty" + "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "location": "path", - "description": "The name of the transfer operation.\nRequired.", "type": "string", "required": true, - "pattern": "^transferOperations/.+$" + "pattern": "^transferOperations/.+$", + "location": "path", + "description": "The name of the operation resource." } }, - "flatPath": "v1/transferOperations/{transferOperationsId}:resume", - "id": "storagetransfer.transferOperations.resume", - "path": "v1/{+name}:resume", + "flatPath": "v1/transferOperations/{transferOperationsId}", + "id": "storagetransfer.transferOperations.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." + }, + "pause": { "request": { - "$ref": "ResumeTransferOperationRequest" + "$ref": "PauseTransferOperationRequest" }, - "description": "Resumes a transfer operation that is paused." - }, - "cancel": { - "httpMethod": "POST", + "description": "Pauses a transfer operation.", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { + "description": "The name of the transfer operation.\nRequired.", "type": "string", "required": true, "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the operation resource to be cancelled." + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "storagetransfer.transferOperations.cancel", - "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation." + "flatPath": "v1/transferOperations/{transferOperationsId}:pause", + "id": "storagetransfer.transferOperations.pause", + "path": "v1/{+name}:pause" } } }, "transferJobs": { "methods": { "list": { - "id": "storagetransfer.transferJobs.list", - "path": "v1/transferJobs", - "description": "Lists transfer jobs.", + "httpMethod": "GET", + "parameterOrder": [], "response": { "$ref": "ListTransferJobsResponse" }, - "parameterOrder": [], - "httpMethod": "GET", "parameters": { "filter": { "location": "query", @@ -267,24 +257,28 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/transferJobs" + "flatPath": "v1/transferJobs", + "path": "v1/transferJobs", + "id": "storagetransfer.transferJobs.list", + "description": "Lists transfer jobs." }, "get": { - "response": { - "$ref": "TransferJob" - }, + "description": "Gets a transfer job.", + "httpMethod": "GET", "parameterOrder": [ "jobName" ], - "httpMethod": "GET", + "response": { + "$ref": "TransferJob" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "projectId": { - "location": "query", "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", - "type": "string" + "type": "string", + "location": "query" }, "jobName": { "location": "path", @@ -295,18 +289,17 @@ } }, "flatPath": "v1/transferJobs/{transferJobsId}", - "id": "storagetransfer.transferJobs.get", "path": "v1/{+jobName}", - "description": "Gets a transfer job." + "id": "storagetransfer.transferJobs.get" }, "patch": { - "response": { - "$ref": "TransferJob" - }, + "httpMethod": "PATCH", "parameterOrder": [ "jobName" ], - "httpMethod": "PATCH", + "response": { + "$ref": "TransferJob" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -320,21 +313,14 @@ } }, "flatPath": "v1/transferJobs/{transferJobsId}", - "id": "storagetransfer.transferJobs.patch", "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." }, "create": { - "flatPath": "v1/transferJobs", - "path": "v1/transferJobs", - "id": "storagetransfer.transferJobs.create", - "request": { - "$ref": "TransferJob" - }, - "description": "Creates a transfer job that runs periodically.", "httpMethod": "POST", "parameterOrder": [], "response": { @@ -343,62 +329,54 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "parameters": {} + "parameters": {}, + "flatPath": "v1/transferJobs", + "path": "v1/transferJobs", + "id": "storagetransfer.transferJobs.create", + "request": { + "$ref": "TransferJob" + }, + "description": "Creates a transfer job that runs periodically." } } } }, "parameters": { - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" - }, - "prettyPrint": { - "default": "true", - "type": "boolean", - "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", - "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", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { + "type": "string", + "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" - ] + "description": "V1 error format." }, "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -406,34 +384,49 @@ ], "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" + "default": "json" }, "access_token": { "location": "query", "description": "OAuth access token.", "type": "string" }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "type": "string", + "location": "query" + }, "quotaUser": { - "location": "query", "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string" + "type": "string", + "location": "query" }, "pp": { "description": "Pretty-print response.", "default": "true", "type": "boolean", "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.", + "default": "true", + "type": "boolean" } }, "schemas": { @@ -476,26 +469,24 @@ } }, "ErrorLogEntry": { + "id": "ErrorLogEntry", "description": "An entry describing an error that has occurred.", "type": "object", "properties": { "errorDetails": { + "description": "A list of messages that carry the error details.", "items": { "type": "string" }, - "type": "array", - "description": "A list of messages that carry the error details." + "type": "array" }, "url": { "description": "A URL that refers to the target (a data source, a data sink,\nor an object) with which the error is associated.\nRequired.", "type": "string" } - }, - "id": "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.", @@ -511,8 +502,6 @@ "type": "string" }, "status": { - "description": "Status of the job. This value MUST be specified for\n`CreateTransferJobRequests`.\n\nNOTE: The effect of the new job status takes place during a subsequent job\nrun. For example, if you change the job status from `ENABLED` to\n`DISABLED`, and an operation spawned by the transfer is running, the status\nchange would not affect the current operation.", - "type": "string", "enumDescriptions": [ "Zero is an illegal value.", "New transfers will be performed based on the schedule.", @@ -524,7 +513,9 @@ "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": { "description": "Schedule specification.\nRequired.", @@ -539,41 +530,46 @@ "description": "This field cannot be changed by user requests.", "type": "string" }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", + "type": "string" + }, "lastModificationTime": { "format": "google-datetime", "description": "This field cannot be changed by user requests.", "type": "string" - }, - "projectId": { - "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", - "type": "string" } }, - "id": "TransferJob" + "id": "TransferJob", + "description": "This resource represents the configuration of a transfer job that runs\nperiodically.", + "type": "object" }, - "Schedule": { - "description": "Transfers can be scheduled to recur or to run just once.", - "type": "object", + "Schedule": { "properties": { - "scheduleEndDate": { - "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce.", - "$ref": "Date" - }, "startTimeOfDay": { "$ref": "TimeOfDay", "description": "The time in UTC at which the transfer will be scheduled to start in a day.\nTransfers may start later than this time. If not specified, recurring and\none-time transfers that are scheduled to run today will run immediately;\nrecurring transfers that are scheduled to run on a future date will start\nat approximately midnight UTC on that date. Note that when configuring a\ntransfer with the Cloud Platform Console, the transfer's start time in a\nday is specified in your local timezone." }, "scheduleStartDate": { - "$ref": "Date", - "description": "The first day the recurring transfer is scheduled to run. If\n`scheduleStartDate` is in the past, the transfer will run for the first\ntime on the following day.\nRequired." + "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.", + "$ref": "Date" + }, + "scheduleEndDate": { + "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce.", + "$ref": "Date" } }, - "id": "Schedule" + "id": "Schedule", + "description": "Transfers can be scheduled to recur or to run just once.", + "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": { + "format": "int32", + "description": "Month of year. Must be from 1 to 12.", + "type": "integer" + }, "day": { "format": "int32", "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.", @@ -583,43 +579,23 @@ "format": "int32", "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", "type": "integer" - }, - "month": { - "format": "int32", - "description": "Month of year. Must be from 1 to 12.", - "type": "integer" } }, - "id": "Date" + "id": "Date", + "description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.", + "type": "object" }, "TransferOperation": { - "id": "TransferOperation", "description": "A description of the execution of a transfer.", "type": "object", "properties": { - "projectId": { - "description": "The ID of the Google Cloud Platform Console project that owns the operation.\nRequired.", - "type": "string" - }, - "endTime": { - "format": "google-datetime", - "description": "End time of this transfer execution.", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "Start time of this transfer execution.", - "type": "string" - }, - "transferJobName": { - "description": "The name of the transfer job that triggers this transfer operation.", - "type": "string" - }, - "transferSpec": { - "$ref": "TransferSpec", - "description": "Transfer specification.\nRequired." + "counters": { + "$ref": "TransferCounters", + "description": "Information about the progress of the transfer operation." }, "status": { + "description": "Status of the transfer operation.", + "type": "string", "enumDescriptions": [ "Zero is an illegal value.", "In progress.", @@ -635,13 +611,7 @@ "SUCCESS", "FAILED", "ABORTED" - ], - "description": "Status of the transfer operation.", - "type": "string" - }, - "counters": { - "$ref": "TransferCounters", - "description": "Information about the progress of the transfer operation." + ] }, "errorBreakdowns": { "description": "Summarizes errors encountered with sample error log entries.", @@ -653,8 +623,31 @@ "name": { "description": "A globally unique ID assigned by the system.", "type": "string" + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the operation.\nRequired.", + "type": "string" + }, + "endTime": { + "format": "google-datetime", + "description": "End time of this transfer execution.", + "type": "string" + }, + "startTime": { + "format": "google-datetime", + "description": "Start time of this transfer execution.", + "type": "string" + }, + "transferJobName": { + "description": "The name of the transfer job that triggers this transfer operation.", + "type": "string" + }, + "transferSpec": { + "$ref": "TransferSpec", + "description": "Transfer specification.\nRequired." } - } + }, + "id": "TransferOperation" }, "AwsS3Data": { "description": "An AwsS3Data can be a data source, but not a data sink.\nIn an AwsS3Data, an object's name is the S3 object's key name.", @@ -665,13 +658,21 @@ "type": "string" }, "awsAccessKey": { - "$ref": "AwsAccessKey", - "description": "AWS access key used to sign the API requests to the AWS S3 bucket.\nPermissions on the bucket must be granted to the access ID of the\nAWS access key.\nRequired." + "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" } }, "id": "AwsS3Data" }, + "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": {} + }, "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.", @@ -682,112 +683,102 @@ "type": "string" } }, - "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" - }, - "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": "AwsAccessKey" }, "PauseTransferOperationRequest": { + "description": "Request passed to PauseTransferOperation.", "type": "object", "properties": {}, - "id": "PauseTransferOperationRequest", - "description": "Request passed to PauseTransferOperation." + "id": "PauseTransferOperationRequest" }, "TransferCounters": { - "description": "A collection of counters that report the progress of a transfer operation.", - "type": "object", "properties": { - "bytesFailedToDeleteFromSink": { + "objectsFoundFromSource": { "format": "int64", - "description": "Bytes that failed to be deleted from the data sink.", + "description": "Objects found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.", "type": "string" }, - "bytesDeletedFromSink": { + "bytesDeletedFromSource": { + "type": "string", "format": "int64", - "description": "Bytes that are deleted from the data sink.", - "type": "string" + "description": "Bytes that are deleted from the data source." }, - "bytesFromSourceFailed": { - "type": "string", + "objectsFailedToDeleteFromSink": { "format": "int64", - "description": "Bytes in the data source that failed during the transfer." + "description": "Objects that failed to be deleted from the data sink.", + "type": "string" }, - "objectsCopiedToSink": { + "objectsDeletedFromSink": { "format": "int64", - "description": "Objects that are copied to the data sink.", + "description": "Objects that are deleted from the data sink.", "type": "string" }, - "objectsFromSourceFailed": { + "objectsFoundOnlyFromSink": { "format": "int64", - "description": "Objects in the data source that failed during the transfer.", + "description": "Objects found only in the data sink that are scheduled to be deleted.", "type": "string" }, - "bytesFoundOnlyFromSink": { + "bytesFromSourceSkippedBySync": { "format": "int64", - "description": "Bytes found only in the data sink that are scheduled to be deleted.", + "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink.", "type": "string" }, - "objectsDeletedFromSource": { + "bytesDeletedFromSink": { "format": "int64", - "description": "Objects that are deleted from the data source.", + "description": "Bytes that are deleted from the data sink.", "type": "string" }, - "bytesCopiedToSink": { + "bytesFailedToDeleteFromSink": { "format": "int64", - "description": "Bytes that are copied to the data sink.", + "description": "Bytes that failed to be deleted from the data sink.", "type": "string" }, - "objectsFromSourceSkippedBySync": { + "bytesFromSourceFailed": { "format": "int64", - "description": "Objects in the data source that are not transferred because they already\nexist in the data sink.", + "description": "Bytes in the data source that failed during the transfer.", "type": "string" }, - "bytesFoundFromSource": { - "type": "string", + "objectsFromSourceFailed": { "format": "int64", - "description": "Bytes found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures." + "description": "Objects in the data source that failed during the transfer.", + "type": "string" }, - "bytesDeletedFromSource": { + "objectsCopiedToSink": { "format": "int64", - "description": "Bytes that are deleted from the data source.", + "description": "Objects that are copied to the data sink.", "type": "string" }, - "objectsFoundFromSource": { + "bytesFoundOnlyFromSink": { "format": "int64", - "description": "Objects found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.", + "description": "Bytes found only in the data sink that are scheduled to be deleted.", "type": "string" }, - "objectsFailedToDeleteFromSink": { + "objectsDeletedFromSource": { "format": "int64", - "description": "Objects that failed to be deleted from the data sink.", + "description": "Objects that are deleted from the data source.", "type": "string" }, - "objectsDeletedFromSink": { + "bytesCopiedToSink": { "format": "int64", - "description": "Objects that are deleted from the data sink.", + "description": "Bytes that are copied to the data sink.", "type": "string" }, - "objectsFoundOnlyFromSink": { + "bytesFoundFromSource": { "format": "int64", - "description": "Objects found only in the data sink that are scheduled to be deleted.", + "description": "Bytes found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.", "type": "string" }, - "bytesFromSourceSkippedBySync": { - "type": "string", + "objectsFromSourceSkippedBySync": { "format": "int64", - "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink." + "description": "Objects in the data source that are not transferred because they already\nexist in the data sink.", + "type": "string" } }, - "id": "TransferCounters" + "id": "TransferCounters", + "description": "A collection of counters that report the progress of a transfer operation.", + "type": "object" }, "ErrorSummary": { - "description": "A summary of errors by error code, plus a count and sample error log\nentries.", - "type": "object", "properties": { "errorCode": { "enum": [ @@ -844,7 +835,9 @@ "type": "array" } }, - "id": "ErrorSummary" + "id": "ErrorSummary", + "description": "A summary of errors by error code, plus a count and sample error log\nentries.", + "type": "object" }, "HttpData": { "description": "An HttpData specifies a list of objects on the web to be transferred over\nHTTP. The information of the objects to be transferred is contained in a\nfile referenced by a URL. The first line in the file must be\n\"TsvHttpData-1.0\", which specifies the format of the file. Subsequent lines\nspecify the information of the list of objects, one object per list entry.\nEach entry has the following tab-delimited fields:\n\n* HTTP URL - The location of the object.\n\n* Length - The size of the object in bytes.\n\n* MD5 - The base64-encoded MD5 hash of the object.\n\nFor an example of a valid TSV file, see\n[Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)\n\nWhen transferring data based on a URL list, keep the following in mind:\n\n* When an object located at `http(s)://hostname:port/\u003cURL-path\u003e` is transferred\nto a data sink, the name of the object at the data sink is\n`\u003chostname\u003e/\u003cURL-path\u003e`.\n\n* If the specified size of an object does not match the actual size of the\nobject fetched, the object will not be transferred.\n\n* If the specified MD5 does not match the MD5 computed from the transferred\nbytes, the object transfer will fail. For more information, see\n[Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)\n\n* Ensure that each URL you specify is publicly accessible. For\nexample, in Google Cloud Storage you can\n[share an object publicly]\n(https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get\na link to it.\n\n* Storage Transfer Service obeys `robots.txt` rules and requires the source\nHTTP server to support `Range` requests and to return a `Content-Length`\nheader in each response.\n\n* [ObjectConditions](#ObjectConditions) have no effect when filtering objects\nto transfer.", @@ -862,8 +855,8 @@ "type": "object", "properties": { "bucketName": { - "description": "Google Cloud Storage bucket name (see\n[Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nRequired.", - "type": "string" + "type": "string", + "description": "Google Cloud Storage bucket name (see\n[Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nRequired." } }, "id": "GcsData" @@ -872,23 +865,21 @@ "description": "Response from ListTransferJobs.", "type": "object", "properties": { + "nextPageToken": { + "description": "The list next page token.", + "type": "string" + }, "transferJobs": { "description": "A list of transfer jobs.", "items": { "$ref": "TransferJob" }, "type": "array" - }, - "nextPageToken": { - "description": "The list next page token.", - "type": "string" } }, "id": "ListTransferJobsResponse" }, "UpdateTransferJobRequest": { - "description": "Request passed to UpdateTransferJob.", - "type": "object", "properties": { "transferJob": { "$ref": "TransferJob", @@ -904,25 +895,14 @@ "type": "string" } }, - "id": "UpdateTransferJobRequest" + "id": "UpdateTransferJobRequest", + "description": "Request passed to UpdateTransferJob.", + "type": "object" }, "ObjectConditions": { - "id": "ObjectConditions", "description": "Conditions that determine which objects will be transferred.", "type": "object", "properties": { - "excludePrefixes": { - "items": { - "type": "string" - }, - "type": "array", - "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000." - }, - "minTimeElapsedSinceLastModification": { - "format": "google-duration", - "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`.", - "type": "string" - }, "maxTimeElapsedSinceLastModification": { "type": "string", "format": "google-duration", @@ -934,40 +914,53 @@ "type": "string" }, "type": "array" + }, + "excludePrefixes": { + "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "minTimeElapsedSinceLastModification": { + "type": "string", + "format": "google-duration", + "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`." } - } + }, + "id": "ObjectConditions" }, "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": { "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 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 originally returns it. If you use the default HTTP mapping, the `name` should have the format of `transferOperations/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": "Represents the transfer operation object.", - "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" + }, + "description": "Represents the transfer operation object.", + "type": "object" } }, "id": "Operation" @@ -976,13 +969,9 @@ "description": "Configuration for running a transfer.", "type": "object", "properties": { - "awsS3DataSource": { - "description": "An AWS S3 data source.", - "$ref": "AwsS3Data" - }, "httpDataSource": { - "description": "An HTTP URL data source.", - "$ref": "HttpData" + "$ref": "HttpData", + "description": "An HTTP URL data source." }, "objectConditions": { "$ref": "ObjectConditions", @@ -999,28 +988,32 @@ "transferOptions": { "$ref": "TransferOptions", "description": "If the option `deleteObjectsUniqueInSink` is `true`, object conditions\nbased on objects' `lastModificationTime` are ignored and do not exclude\nobjects in a data source or a data sink." + }, + "awsS3DataSource": { + "$ref": "AwsS3Data", + "description": "An AWS S3 data source." } }, "id": "TransferSpec" }, "TransferOptions": { + "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer.", "type": "object", "properties": { + "overwriteObjectsAlreadyExistingInSink": { + "description": "Whether overwriting objects that already exist in the sink is allowed.", + "type": "boolean" + }, "deleteObjectsFromSourceAfterTransfer": { - "type": "boolean", - "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive." + "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive.", + "type": "boolean" }, "deleteObjectsUniqueInSink": { "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." + "id": "TransferOptions" }, "ResumeTransferOperationRequest": { "description": "Request passed to ResumeTransferOperation.", @@ -1032,11 +1025,6 @@ "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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" @@ -1044,34 +1032,46 @@ "details": { "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", "items": { - "type": "object", "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", "type": "any" - } + }, + "type": "object" }, "type": "array" + }, + "code": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "type": "integer" } }, "id": "Status" }, "ListOperationsResponse": { - "id": "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.", "items": { "$ref": "Operation" }, "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" } - } + }, + "id": "ListOperationsResponse" } - } + }, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "protocol": "rest", + "version": "v1", + "baseUrl": "https://storagetransfer.googleapis.com/" } diff --git a/DiscoveryJson/streetviewpublish_v1.json b/DiscoveryJson/streetviewpublish_v1.json deleted file mode 100644 index be7cdabe4b..0000000000 --- a/DiscoveryJson/streetviewpublish_v1.json +++ /dev/null @@ -1,688 +0,0 @@ -{ - "revision": "20170712", - "documentationLink": "https://developers.google.com/streetview/publish/", - "id": "streetviewpublish:v1", - "discoveryVersion": "v1", - "version_module": "True", - "schemas": { - "Pose": { - "description": "Raw pose measurement for an entity.", - "type": "object", - "properties": { - "level": { - "$ref": "Level", - "description": "Level (the floor in a building) used to configure vertical navigation." - }, - "heading": { - "format": "double", - "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.", - "type": "number" - }, - "altitude": { - "format": "double", - "description": "Altitude of the pose in meters above ground level (as defined by WGS84).\nNaN indicates an unmeasured quantity.", - "type": "number" - }, - "pitch": { - "format": "double", - "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.", - "type": "number" - }, - "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 latitude and longitude pair are not provided\nhere, the geolocation from the exif header will be used.\nIf the latitude and longitude pair is not provided and cannot be found in\nthe exif header, the create photo process will fail.", - "$ref": "LatLng" - }, - "roll": { - "format": "double", - "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.", - "type": "number" - } - }, - "id": "Pose" - }, - "PhotoId": { - "type": "object", - "properties": { - "id": { - "description": "Required. A base64 encoded identifier.", - "type": "string" - } - }, - "id": "PhotoId", - "description": "Identifier for a photo." - }, - "BatchUpdatePhotosRequest": { - "properties": { - "updatePhotoRequests": { - "description": "Required. List of update photo requests.", - "items": { - "$ref": "UpdatePhotoRequest" - }, - "type": "array" - } - }, - "id": "BatchUpdatePhotosRequest", - "description": "Request to update the metadata of photos.\nUpdating the pixels of photos is not supported.", - "type": "object" - }, - "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\n`page_size` field in the request.", - "items": { - "$ref": "Photo" - }, - "type": "array" - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - } - }, - "id": "ListPhotosResponse" - }, - "Photo": { - "type": "object", - "properties": { - "downloadUrl": { - "description": "Output only. The download URL for the photo bytes. This field is set only\nwhen the `view` parameter in a `GetPhotoRequest` is set to\n`INCLUDE_DOWNLOAD_URL`.", - "type": "string" - }, - "connections": { - "description": "Connections to other photos. A connection represents the link from this\nphoto to another photo.", - "items": { - "$ref": "Connection" - }, - "type": "array" - }, - "places": { - "description": "Places where this photo belongs.", - "items": { - "$ref": "Place" - }, - "type": "array" - }, - "pose": { - "$ref": "Pose", - "description": "Pose of the photo." - }, - "photoId": { - "description": "Output only. Identifier for the photo, which is unique among all photos in\nGoogle.", - "$ref": "PhotoId" - }, - "uploadReference": { - "$ref": "UploadRef", - "description": "Required (when creating 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" - }, - "thumbnailUrl": { - "description": "Output only. The thumbnail URL for showing a preview of the given photo.", - "type": "string" - }, - "captureTime": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "viewCount": { - "format": "int64", - "description": "Output only. View count of the photo.", - "type": "string" - } - }, - "id": "Photo", - "description": "Photo is used to store 360 photos along with photo metadata." - }, - "PhotoResponse": { - "description": "Response payload for a single `Photo` in batch operations including\n`BatchGetPhotosRequest` and `BatchUpdatePhotosRequest`.", - "type": "object", - "properties": { - "photo": { - "description": "The photo resource, if the request was successful.", - "$ref": "Photo" - }, - "status": { - "$ref": "Status", - "description": "The status for the operation to get or update a single photo in the batch\nrequest." - } - }, - "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" - }, - "BatchUpdatePhotosResponse": { - "description": "Response to batch update of metadata of one or more photos.", - "type": "object", - "properties": { - "results": { - "description": "List of results for each individual photo updated, in the same order as\nthe request.", - "items": { - "$ref": "PhotoResponse" - }, - "type": "array" - } - }, - "id": "BatchUpdatePhotosResponse" - }, - "BatchDeletePhotosResponse": { - "description": "Response to batch delete of one or more photos.", - "type": "object", - "properties": { - "status": { - "description": "The status for the operation to delete a single photo in the batch request.", - "items": { - "$ref": "Status" - }, - "type": "array" - } - }, - "id": "BatchDeletePhotosResponse" - }, - "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.", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "type": "array" - }, - "code": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "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" - }, - "Level": { - "description": "Level information containing level number and its corresponding name.", - "type": "object", - "properties": { - "number": { - "format": "double", - "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.", - "type": "number" - }, - "name": { - "description": "Required. A name assigned to this Level, restricted to 3 characters.\nConsider how the elevator buttons would be labeled for this level if there\nwas an elevator.", - "type": "string" - } - }, - "id": "Level" - }, - "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" - }, - "UploadRef": { - "description": "Upload reference for media files.", - "type": "object", - "properties": { - "uploadUrl": { - "description": "Required. An upload reference should be unique for each user. It follows\nthe form:\n\"https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}\"", - "type": "string" - } - }, - "id": "UploadRef" - }, - "BatchGetPhotosResponse": { - "properties": { - "results": { - "description": "List of results for each individual photo requested, in the same order as\nthe request.", - "items": { - "$ref": "PhotoResponse" - }, - "type": "array" - } - }, - "id": "BatchGetPhotosResponse", - "description": "Response to batch get of photos.", - "type": "object" - }, - "Place": { - "description": "Place metadata for an entity.", - "type": "object", - "properties": { - "placeId": { - "description": "Required. Place identifier, as described in\nhttps://developers.google.com/places/place-id.", - "type": "string" - } - }, - "id": "Place" - }, - "BatchDeletePhotosRequest": { - "properties": { - "photoIds": { - "description": "Required. List of delete photo requests. For HTTP GET requests, the URL\nquery parameter should be `photoIds=\u003cid1\u003e&photoIds=\u003cid2\u003e&...`.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "id": "BatchDeletePhotosRequest", - "description": "Request to delete multiple photos.", - "type": "object" - }, - "LatLng": { - "type": "object", - "properties": { - "latitude": { - "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "type": "number" - }, - "longitude": { - "format": "double", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)" - }, - "UpdatePhotoRequest": { - "description": "Request to update the metadata of a photo.\nUpdating the pixels of a photo is not supported.", - "type": "object", - "properties": { - "updateMask": { - "format": "google-fieldmask", - "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo metadata will be entirely replaced with the\nnew Photo metadata in this request. The update fails if invalid fields are\nspecified. Multiple fields can be specified 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 `update_mask` mean the\nentire set of repeated values will be replaced with the new contents. For\nexample, if `UpdatePhotoRequest.photo.update_mask` contains `connections`\nand `UpdatePhotoRequest.photo.connections` is empty, all connections will\nbe removed.\u003c/aside\u003e", - "type": "string" - }, - "photo": { - "$ref": "Photo", - "description": "Required. Photo object containing the new metadata. Only the fields\nspecified in `update_mask` are used. If `update_mask` is not present, the\nupdate applies to all fields.\n\u003caside class=\"note\"\u003e\u003cb\u003eNote:\u003c/b\u003e To update `pose.altitude`,\n`pose.latlngpair` has to be filled as well. Otherwise, the request will\nfail." - } - }, - "id": "UpdatePhotoRequest" - } - }, - "protocol": "rest", - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" - }, - "canonicalName": "Street View Publish", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/streetviewpublish": { - "description": "Publish and manage your 360 photos on Google Street View" - } - } - } - }, - "rootUrl": "https://streetviewpublish.googleapis.com/", - "ownerDomain": "google.com", - "name": "streetviewpublish", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Street View Publish API", - "ownerName": "Google", - "resources": { - "photo": { - "methods": { - "startUpload": { - "id": "streetviewpublish.photo.startUpload", - "path": "v1/photo:startUpload", - "request": { - "$ref": "Empty" - }, - "description": "Creates an upload session to start uploading photo data. The upload URL of\nthe returned `UploadRef` is used to upload the data 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 `UploadRef` is used with\n`StreetViewPublishService:CreatePhoto()` to create the `Photo` object\nentry.", - "response": { - "$ref": "UploadRef" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photo:startUpload" - }, - "delete": { - "description": "Deletes a photo and its metadata.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user did not create the requested\nphoto.\n* `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.", - "type": "string", - "required": true, - "location": "path" - } - }, - "flatPath": "v1/photo/{photoId}", - "id": "streetviewpublish.photo.delete", - "path": "v1/photo/{photoId}" - }, - "get": { - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "view": { - "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ] - }, - "photoId": { - "type": "string", - "required": true, - "location": "path", - "description": "Required. ID of the photo." - } - }, - "flatPath": "v1/photo/{photoId}", - "id": "streetviewpublish.photo.get", - "path": "v1/photo/{photoId}", - "description": "Gets the metadata of the specified `Photo`.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user did not create the requested\nphoto.\n* `NOT_FOUND` if the requested photo does not exist.", - "response": { - "$ref": "Photo" - }, - "parameterOrder": [ - "photoId" - ], - "httpMethod": "GET" - }, - "update": { - "path": "v1/photo/{id}", - "id": "streetviewpublish.photo.update", - "request": { - "$ref": "Photo" - }, - "description": "Updates the metadata of a photo, such as pose, place association, etc.\nChanging the pixels of a photo is not supported.\n\nThis method returns the following error codes:\n\n* `PERMISSION_DENIED` if the requesting user did not create the requested\nphoto.\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the photo ID does not exist.", - "httpMethod": "PUT", - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Photo" - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "id": { - "location": "path", - "description": "Required. A base64 encoded identifier.", - "type": "string", - "required": true - }, - "updateMask": { - "format": "google-fieldmask", - "description": "Mask that identifies fields on the photo metadata to update.\nIf not present, the old Photo metadata will be entirely replaced with the\nnew Photo metadata in this request. The update fails if invalid fields are\nspecified. Multiple fields can be specified 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 `update_mask` mean the\nentire set of repeated values will be replaced with the new contents. For\nexample, if `UpdatePhotoRequest.photo.update_mask` contains `connections`\nand `UpdatePhotoRequest.photo.connections` is empty, all connections will\nbe removed.\u003c/aside\u003e", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1/photo/{id}" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Photo" - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photo", - "path": "v1/photo", - "id": "streetviewpublish.photo.create", - "request": { - "$ref": "Photo" - }, - "description": "After the client finishes uploading the photo with the returned\n`UploadRef`, `photo.create` publishes the uploaded photo to Street View on\nGoogle Maps.\n\nThis method returns the following error codes:\n\n* `INVALID_ARGUMENT` if the request is malformed.\n* `NOT_FOUND` if the upload reference does not exist." - } - } - }, - "photos": { - "methods": { - "batchDelete": { - "response": { - "$ref": "BatchDeletePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photos:batchDelete", - "id": "streetviewpublish.photos.batchDelete", - "path": "v1/photos:batchDelete", - "description": "Deletes a list of photos and their metadata.\n\nNote that if `photos.batchDelete` fails, either critical fields\nare missing or there was an authentication error.\nEven if `photos.batchDelete` succeeds, there may have been\nfailures for single photos in the batch. These failures will be specified\nin `BatchDeletePhotosResponse.status`.\nSee `photo.update` for specific failures that can occur per photo.", - "request": { - "$ref": "BatchDeletePhotosRequest" - } - }, - "batchUpdate": { - "response": { - "$ref": "BatchUpdatePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photos:batchUpdate", - "id": "streetviewpublish.photos.batchUpdate", - "path": "v1/photos:batchUpdate", - "request": { - "$ref": "BatchUpdatePhotosRequest" - }, - "description": "Updates the metadata of photos, such as pose, place association, etc.\nChanging the pixels of a photo is not supported.\n\nNote that if `photos.batchUpdate` fails, either critical fields\nare missing or there was an authentication error.\nEven if `photos.batchUpdate` succeeds, there may have been\nfailures for single photos in the batch. These failures will be specified\nin `BatchUpdatePhotosResponse.results.status`.\nSee `UpdatePhoto` for specific failures that can occur per photo." - }, - "batchGet": { - "flatPath": "v1/photos:batchGet", - "id": "streetviewpublish.photos.batchGet", - "path": "v1/photos:batchGet", - "description": "Gets the metadata of the specified `Photo` batch.\n\nNote that if `photos.batchGet` fails, either critical fields are\nmissing or there was an authentication error.\nEven if `photos.batchGet` succeeds, there may have been failures\nfor single photos in the batch. These failures will be specified in\n`BatchGetPhotosResponse.results.status`.\nSee `photo.get` for specific failures that can occur per photo.", - "response": { - "$ref": "BatchGetPhotosResponse" - }, - "httpMethod": "GET", - "parameterOrder": [], - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "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": { - "repeated": true, - "location": "query", - "description": "Required. IDs of the photos. For HTTP GET requests, the URL query parameter\nshould be `photoIds=\u003cid1\u003e&photoIds=\u003cid2\u003e&...`.", - "type": "string" - } - } - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListPhotosResponse" - }, - "parameters": { - "pageToken": { - "description": "The `next_page_token` value returned from a previous List request, if any.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "format": "int32", - "description": "The maximum number of photos to return.\n`page_size` must be non-negative. If `page_size` is zero or is not\nprovided, the default page size of 100 will be used.\nThe number of photos returned in the response may be less than `page_size`\nif the number of photos that belong to the user is less than `page_size`.", - "type": "integer" - }, - "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" - }, - "filter": { - "location": "query", - "description": "The filter expression.\nExample: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw`", - "type": "string" - } - }, - "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 the user." - } - } - } - }, - "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.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", - "enumDescriptions": [ - "Responses with Content-Type of application/json", - "Media download with context-dependent Content-Type", - "Responses with Content-Type of application/x-protobuf" - ], - "location": "query", - "description": "Data format for response.", - "default": "json" - }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { - "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.", - "default": "true", - "type": "boolean" - }, - "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" - } - }, - "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": "" -} diff --git a/DiscoveryJson/toolresults_v1beta3.json b/DiscoveryJson/toolresults_v1beta3.json index 1cae228c19..c6ef35c4bc 100644 --- a/DiscoveryJson/toolresults_v1beta3.json +++ b/DiscoveryJson/toolresults_v1beta3.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/i25JzyCcc0tPXC_OL9H7g5FEzaI\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/J95No2FM-ZK0g8OQILvKTb4HicI\"", "discoveryVersion": "v1", "id": "toolresults:v1beta3", "name": "toolresults", "canonicalName": "Tool Results", "version": "v1beta3", - "revision": "20170712", + "revision": "20170718", "title": "Cloud Tool Results API", "description": "Reads and publishes results from Firebase Test Lab.", "ownerDomain": "google.com", @@ -704,9 +704,17 @@ "type": "object", "description": "A stacktrace.", "properties": { + "clusterId": { + "type": "string", + "description": "Exception cluster ID" + }, "exception": { "type": "string", "description": "The stack trace message.\n\nRequired" + }, + "reportId": { + "type": "string", + "description": "Exception report ID" } } }, diff --git a/DiscoveryJson/toolresults_v1beta3firstparty.json b/DiscoveryJson/toolresults_v1beta3firstparty.json index e6f0b87d5b..98fdda3427 100644 --- a/DiscoveryJson/toolresults_v1beta3firstparty.json +++ b/DiscoveryJson/toolresults_v1beta3firstparty.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/cSRtdvIwnx_tpSQU2HgCQoaVq90\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/S3pwfTJaOsJizaNBQgY1WAP4Jss\"", "discoveryVersion": "v1", "id": "toolresults:v1beta3firstparty", "name": "toolresults", "canonicalName": "Tool Results", "version": "v1beta3firstparty", - "revision": "20170712", + "revision": "20170718", "title": "Cloud Tool Results firstparty API", "description": "Reads and publishes results from Firebase Test Lab.", "ownerDomain": "google.com", @@ -695,9 +695,17 @@ "type": "object", "description": "A stacktrace.", "properties": { + "clusterId": { + "type": "string", + "description": "Exception cluster ID" + }, "exception": { "type": "string", "description": "The stack trace message.\n\nRequired" + }, + "reportId": { + "type": "string", + "description": "Exception report ID" } } }, diff --git a/DiscoveryJson/tracing_v2.json b/DiscoveryJson/tracing_v2.json deleted file mode 100644 index 747dd3c1a6..0000000000 --- a/DiscoveryJson/tracing_v2.json +++ /dev/null @@ -1,739 +0,0 @@ -{ - "title": "Stackdriver Trace API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "traces": { - "methods": { - "listSpans": { - "description": "Returns a list of spans within a trace.", - "httpMethod": "GET", - "response": { - "$ref": "ListSpansResponse" - }, - "parameterOrder": [ - "parent" - ], - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", - "type": "string" - }, - "parent": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/traces/[^/]+$", - "location": "path", - "description": "Required: The resource name of the trace containing the spans to list.\nThe format is `projects/PROJECT_ID/traces/TRACE_ID`." - } - }, - "flatPath": "v2/projects/{projectsId}/traces/{tracesId}:listSpans", - "path": "v2/{+parent}:listSpans", - "id": "cloudtrace.projects.traces.listSpans" - }, - "list": { - "description": "Returns of a list of traces that match the specified filter conditions.", - "httpMethod": "GET", - "response": { - "$ref": "ListTracesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "location": "query", - "format": "int32", - "description": "Optional. The maximum number of results to return from this request.\nNon-positive values are ignored. The presence of `next_page_token` in the\nresponse indicates that more results might be available, even if fewer than\nthe maximum number of results is returned by this request.", - "type": "integer" - }, - "parent": { - "type": "string", - "required": true, - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project where the trace data is stored. The format\nis `projects/PROJECT_ID`." - }, - "orderBy": { - "location": "query", - "description": "Optional. A single field used to sort the returned traces.\nOnly the following field names can be used:\n\n* `trace_id`: the trace's ID field\n* `name`: the root span's resource name\n* `duration`: the difference between the root span's start time and end time\n* `start`: the start time of the root span\n\nSorting is in ascending order unless `desc` is appended to the sort field name.\nExample: `\"name desc\"`).", - "type": "string" - }, - "filter": { - "type": "string", - "location": "query", - "description": "Opional. Return only traces that match this\n[trace filter](/trace/docs/trace-filters). Example:\n\n \"label:/http/url root:/_ah/background my_label:17\"" - }, - "endTime": { - "location": "query", - "format": "google-datetime", - "description": "Optional. Do not return traces whose start time is later than this time.", - "type": "string" - }, - "startTime": { - "location": "query", - "format": "google-datetime", - "description": "Optional. Do not return traces whose end time is earlier than this time.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the\npreceding call to this method. `page_token` must be the value of\n`next_page_token` from the previous response. The values of other method\nparameters should be identical to those in the previous call.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], - "flatPath": "v2/projects/{projectsId}/traces", - "path": "v2/{+parent}/traces", - "id": "cloudtrace.projects.traces.list" - }, - "batchWrite": { - "id": "cloudtrace.projects.traces.batchWrite", - "path": "v2/{+name}/traces:batchWrite", - "description": "Sends new spans to Stackdriver Trace or updates existing traces. If the\nname of a trace that you send matches that of an existing trace, new spans\nare added to the existing trace. Attempt to update existing spans results\nundefined behavior. If the name does not match, a new trace is created\nwith given set of spans.", - "request": { - "$ref": "BatchWriteSpansRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. Name of the project where the spans belong. The format is\n`projects/PROJECT_ID`.", - "type": "string", - "required": true - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "flatPath": "v2/projects/{projectsId}/traces:batchWrite" - } - }, - "resources": { - "spans": { - "methods": { - "create": { - "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", - "id": "cloudtrace.projects.traces.spans.create", - "path": "v2/{+name}", - "description": "Creates a new Span.", - "request": { - "$ref": "Span" - }, - "response": { - "$ref": "Span" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "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.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", - "type": "string", - "required": true, - "pattern": "^projects/[^/]+/traces/[^/]+/spans/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ] - } - } - } - } - } - } - } - }, - "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": { - "type": "string", - "location": "query", - "description": "OAuth access token." - }, - "quotaUser": { - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", - "type": "string", - "location": "query" - }, - "pp": { - "description": "Pretty-print response.", - "default": "true", - "type": "boolean", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" - }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "type": "boolean" - }, - "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": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { - "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": "Send and retrieve trace data from Stackdriver Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Stackdriver Trace for display, reporting, and analysis.\n", - "servicePath": "", - "basePath": "", - "revision": "20170711", - "documentationLink": "https://cloud.google.com/trace", - "id": "cloudtrace:v2", - "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": { - "description": "A collection of links.", - "items": { - "$ref": "Link" - }, - "type": "array" - }, - "droppedLinksCount": { - "format": "int32", - "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", - "type": "integer" - } - }, - "id": "Links" - }, - "TruncatableString": { - "type": "object", - "properties": { - "truncatedByteCount": { - "format": "int32", - "description": "The number of bytes removed from the original string. If this\nvalue is 0, then the string was not shortened.", - "type": "integer" - }, - "value": { - "description": "The shortened string. For example, if the original string was 500\nbytes long and the limit of the string was 128 bytes, then this\nvalue contains the first 128 bytes of the 500-byte string. Note that\ntruncation always happens on the character boundary, to ensure that\ntruncated string is still valid UTF8. In case of multi-byte characters,\nsize of truncated string can be less than truncation limit.", - "type": "string" - } - }, - "id": "TruncatableString", - "description": "Represents a string that might be shortened to a specified length." - }, - "StackTrace": { - "id": "StackTrace", - "description": "A call stack appearing in a trace.", - "type": "object", - "properties": { - "stackFrames": { - "$ref": "StackFrames", - "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed." - }, - "stackTraceHashId": { - "type": "string", - "format": "uint64", - "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`." - } - } - }, - "TimeEvent": { - "type": "object", - "properties": { - "annotation": { - "$ref": "Annotation", - "description": "One or more key:value pairs." - }, - "time": { - "format": "google-datetime", - "description": "The timestamp indicating the time the event occurred.", - "type": "string" - }, - "networkEvent": { - "$ref": "NetworkEvent", - "description": "An event describing an RPC message sent/received on the network." - } - }, - "id": "TimeEvent", - "description": "A time-stamped annotation or network event in the Span." - }, - "NetworkEvent": { - "description": "An event describing an RPC message sent or received on the network.", - "type": "object", - "properties": { - "messageSize": { - "format": "uint64", - "description": "The number of bytes sent or received.", - "type": "string" - }, - "time": { - "format": "google-datetime", - "description": "For sent messages, this is the time at which the first bit was sent.\nFor received messages, this is the time at which the last bit was\nreceived.", - "type": "string" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "SENT", - "RECV" - ], - "description": "Type of NetworkEvent. Indicates whether the RPC message was sent or\nreceived.", - "type": "string", - "enumDescriptions": [ - "Unknown event type.", - "Indicates a sent RPC message.", - "Indicates a received RPC message." - ] - }, - "messageId": { - "format": "uint64", - "description": "An identifier for the message, which must be unique in this span.", - "type": "string" - } - }, - "id": "NetworkEvent" - }, - "ListSpansResponse": { - "description": "The response message for the `ListSpans` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If defined, indicates that there might be more spans that match the\nrequest. Pass this as the value of `pageToken` in a subsequent request to\nretrieve additional spans.", - "type": "string" - }, - "spans": { - "description": "The requested spans, if there are any in the specified trace.", - "items": { - "$ref": "Span" - }, - "type": "array" - } - }, - "id": "ListSpansResponse" - }, - "StackFrame": { - "properties": { - "functionName": { - "$ref": "TruncatableString", - "description": "The fully-qualified name that uniquely identifies the function or\nmethod that is active in this frame (up to 1024 bytes)." - }, - "lineNumber": { - "format": "int64", - "description": "The line number in `file_name` where the function call appears.", - "type": "string" - }, - "loadModule": { - "description": "The binary module from where the code was loaded.", - "$ref": "Module" - }, - "columnNumber": { - "format": "int64", - "description": "The column number where the function call appears, if available.\nThis is important in JavaScript because of its anonymous functions.", - "type": "string" - }, - "fileName": { - "$ref": "TruncatableString", - "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)." - }, - "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)." - } - }, - "id": "StackFrame", - "description": "Represents a single stack frame in a stack trace.", - "type": "object" - }, - "Link": { - "id": "Link", - "description": "A pointer from the current span to another span in the same trace or in a\ndifferent trace. For example, this can be used in batching operations,\nwhere a single batch handler processes multiple requests from different\ntraces or when the handler receives a request from a different project.", - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "The relationship of the two spans is unknown.", - "The linked span is a child of the current span.", - "The linked span is a parent of the current span." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "CHILD_LINKED_SPAN", - "PARENT_LINKED_SPAN" - ], - "description": "The relationship of the current span relative to the linked span.", - "type": "string" - }, - "attributes": { - "description": "A set of attributes on the link. There is a limit of 32 attributes per\nlink.", - "$ref": "Attributes" - }, - "traceId": { - "description": "`TRACE_ID` identifies a trace within a project.", - "type": "string" - }, - "spanId": { - "description": "`SPAN_ID` identifies a span within a trace.", - "type": "string" - } - } - }, - "Annotation": { - "id": "Annotation", - "description": "Text annotation with a set of attributes.", - "type": "object", - "properties": { - "attributes": { - "description": "A set of attributes on the annotation. There is a limit of 4 attributes\nper Annotation.", - "$ref": "Attributes" - }, - "description": { - "$ref": "TruncatableString", - "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes." - } - } - }, - "StackFrames": { - "description": "A collection of stack frames, which can be truncated.", - "type": "object", - "properties": { - "droppedFramesCount": { - "format": "int32", - "description": "The number of stack frames that were dropped because there\nwere too many stack frames.\nIf this value is 0, then no stack frames were dropped.", - "type": "integer" - }, - "frame": { - "description": "Stack frames in this call stack.", - "items": { - "$ref": "StackFrame" - }, - "type": "array" - } - }, - "id": "StackFrames" - }, - "Trace": { - "description": "A trace describes how long it takes for an application to perform some\noperations. It consists of a set of spans, each representing\nan operation and including time information and operation details.", - "type": "object", - "properties": { - "name": { - "description": "The resource name of the trace in the following format:\n\n projects/[PROJECT_ID]/traces/TRACE_ID is a unique identifier for a trace within a project.\nThe ID is assigned when the trace is created.", - "type": "string" - } - }, - "id": "Trace" - }, - "TimeEvents": { - "type": "object", - "properties": { - "droppedNetworkEventsCount": { - "format": "int32", - "description": "The number of dropped network events in all the included time events.\nIf the value is 0, then no network events were dropped.", - "type": "integer" - }, - "droppedAnnotationsCount": { - "format": "int32", - "description": "The number of dropped annotations in all the included time events.\nIf the value is 0, then no annotations were dropped.", - "type": "integer" - }, - "timeEvent": { - "description": "A collection of `TimeEvent`s.", - "items": { - "$ref": "TimeEvent" - }, - "type": "array" - } - }, - "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 an RPC message sent/received on the network." - }, - "Module": { - "description": "Binary module.", - "type": "object", - "properties": { - "buildId": { - "$ref": "TruncatableString", - "description": "A unique identifier for the module, usually a hash of its\ncontents (up to 128 bytes)." - }, - "module": { - "description": "For example: main binary, kernel modules, and dynamic libraries\nsuch as libc.so, sharedlib.so (up to 256 bytes).", - "$ref": "TruncatableString" - } - }, - "id": "Module" - }, - "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": { - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "type": "integer" - }, - "message": { - "type": "string", - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client." - }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "type": "array" - } - } - }, - "BatchWriteSpansRequest": { - "description": "The request message for the `BatchWriteSpans` method.", - "type": "object", - "properties": { - "spans": { - "items": { - "$ref": "Span" - }, - "type": "array", - "description": "A collection of spans." - } - }, - "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": { - "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", - "properties": { - "endTime": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "startTime": { - "format": "google-datetime", - "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.", - "type": "string" - }, - "displayName": { - "description": "A description of the span's operation (up to 128 bytes).\nStackdriver Trace displays the description in the\n{% dynamic print site_values.console_name %}.\nFor example, the display name can be a qualified method name or a file name\nand a line number where the operation is called. A best practice is to use\nthe same display name within an application and at the same call point.\nThis makes it easier to correlate spans in different traces.", - "$ref": "TruncatableString" - }, - "timeEvents": { - "$ref": "TimeEvents", - "description": "The included time events. There can be up to 32 annotations and 128 network\nevents per span." - }, - "links": { - "$ref": "Links", - "description": "A maximum of 128 links are allowed per Span." - }, - "attributes": { - "description": "A set of attributes on the span. There is a limit of 32 attributes per\nspan.", - "$ref": "Attributes" - }, - "spanId": { - "description": "The [SPAN_ID] portion of the span's resource name.", - "type": "string" - }, - "childSpanCount": { - "format": "uint32", - "description": "An optional number of child spans that were generated while this span\nwas active. If set, allows implementation to detect missing child spans.", - "type": "integer" - }, - "sameProcessAsParentSpan": { - "description": "A highly recommended but not required flag that identifies when a trace\ncrosses a process boundary. True when the parent_span belongs to the\nsame process as the current span.", - "type": "boolean" - }, - "status": { - "$ref": "Status", - "description": "An optional final status for this span." - }, - "name": { - "description": "The resource name of the span in the following format:\n\n projects/[PROJECT_ID]traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project.\n[SPAN_ID] is a unique identifier for a span within a trace,\nassigned when the span is created.", - "type": "string" - }, - "stackTrace": { - "description": "Stack trace captured at the start of the span.", - "$ref": "StackTrace" - }, - "parentSpanId": { - "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty.", - "type": "string" - } - } - }, - "ListTracesResponse": { - "description": "The response message for the `ListTraces` method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then\n`next_page_token` is included. To get the next set of results, call this\nmethod again using the value of `next_page_token` as `page_token`.", - "type": "string" - }, - "traces": { - "description": "List of trace records returned.", - "items": { - "$ref": "Trace" - }, - "type": "array" - } - }, - "id": "ListTracesResponse" - }, - "AttributeValue": { - "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", - "type": "object", - "properties": { - "intValue": { - "type": "string", - "format": "int64", - "description": "A 64-bit signed integer." - }, - "boolValue": { - "description": "A Boolean value represented by `true` or `false`.", - "type": "boolean" - }, - "stringValue": { - "$ref": "TruncatableString", - "description": "A string up to 256 bytes long." - } - }, - "id": "AttributeValue" - }, - "Attributes": { - "description": "A set of attributes, each in the format `[KEY]:[VALUE]`.", - "type": "object", - "properties": { - "droppedAttributesCount": { - "format": "int32", - "description": "The number of attributes that were discarded. Attributes can be discarded\nbecause their keys are too long or because there are too many attributes.\nIf this value is 0 then all attributes are valid.", - "type": "integer" - }, - "attributeMap": { - "additionalProperties": { - "$ref": "AttributeValue" - }, - "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" - } - }, - "id": "Attributes" - } - }, - "protocol": "rest", - "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" - }, - "canonicalName": "Cloud Trace", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/trace.readonly": { - "description": "Read Trace data for a project or application" - }, - "https://www.googleapis.com/auth/trace.append": { - "description": "Write Trace data for a project or application" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudtrace.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudtrace", - "batchPath": "batch" -} diff --git a/DiscoveryJson/translate_v2.json b/DiscoveryJson/translate_v2.json index b0643917c3..168e303b97 100644 --- a/DiscoveryJson/translate_v2.json +++ b/DiscoveryJson/translate_v2.json @@ -1,32 +1,116 @@ { + "rootUrl": "https://translation.googleapis.com/", "ownerDomain": "google.com", "name": "translate", "batchPath": "batch/translate", - "title": "Google Cloud Translation API", "features": [ "dataWrapper" ], + "title": "Google Cloud Translation API", "ownerName": "Google", "resources": { + "translations": { + "methods": { + "list": { + "response": { + "$ref": "TranslationsListResponse" + }, + "parameterOrder": [ + "q", + "target" + ], + "httpMethod": "GET", + "parameters": { + "cid": { + "repeated": true, + "location": "query", + "description": "The customization id for translate", + "type": "string" + }, + "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.", + "required": true, + "type": "string" + }, + "format": { + "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.", + "type": "string" + }, + "model": { + "location": "query", + "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", + "type": "string" + }, + "q": { + "repeated": true, + "location": "query", + "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", + "required": true, + "type": "string" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ], + "id": "language.translations.list", + "path": "v2", + "description": "Translates input text, returning translated text." + }, + "translate": { + "id": "language.translations.translate", + "path": "v2", + "request": { + "$ref": "TranslateTextRequest" + }, + "description": "Translates input text, returning translated text.", + "response": { + "$ref": "TranslationsListResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "detections": { "methods": { "detect": { + "id": "language.detections.detect", + "path": "v2/detect", + "description": "Detects the language of text within a request.", "request": { "$ref": "DetectLanguageRequest" }, - "description": "Detects the language of text within a request.", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "DetectionsListResponse" }, - "parameters": {}, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-translation", "https://www.googleapis.com/auth/cloud-platform" ], - "path": "v2/detect", - "id": "language.detections.detect" + "parameters": {} }, "list": { "httpMethod": "GET", @@ -36,6 +120,10 @@ "parameterOrder": [ "q" ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-translation", + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "q": { "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", @@ -45,10 +133,6 @@ "location": "query" } }, - "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." @@ -62,98 +146,15 @@ "$ref": "LanguagesListResponse" }, "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "target": { - "description": "The language to use to return localized, human readable names of supported\nlanguages.", - "type": "string", - "location": "query" - }, - "model": { - "description": "The model type for which supported languages should be returned.", - "type": "string", - "location": "query" - } - }, - "path": "v2/languages", - "id": "language.languages.list", - "description": "Returns a list of supported languages for translation." - } - } - }, - "translations": { - "methods": { - "translate": { - "path": "v2", - "id": "language.translations.translate", - "request": { - "$ref": "TranslateTextRequest" - }, - "description": "Translates input text, returning translated text.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "TranslationsListResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-translation", - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "parameterOrder": [ - "q", - "target" - ], - "httpMethod": "GET", - "response": { - "$ref": "TranslationsListResponse" - }, "parameters": { "model": { - "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", - "type": "string", - "location": "query" - }, - "q": { - "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.", - "required": true, - "type": "string", - "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" - }, - "cid": { - "repeated": true, "location": "query", - "description": "The customization id for translate", + "description": "The model type for which supported languages should be returned.", "type": "string" }, "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.", - "required": true, - "type": "string" - }, - "format": { - "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.", + "description": "The language to use to return localized, human readable names of supported\nlanguages.", "type": "string" } }, @@ -161,19 +162,29 @@ "https://www.googleapis.com/auth/cloud-translation", "https://www.googleapis.com/auth/cloud-platform" ], - "id": "language.translations.list", - "path": "v2", - "description": "Translates input text, returning translated text." + "id": "language.languages.list", + "path": "v2/languages", + "description": "Returns a list of supported languages for translation." } } } }, "parameters": { - "quotaUser": { + "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. Overrides userIp if both are provided.", + "description": "API key. 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. Overrides userIp if both are provided.", + "type": "string", + "location": "query" + }, "pp": { "location": "query", "description": "Pretty-print response.", @@ -181,9 +192,9 @@ "type": "boolean" }, "bearer_token": { + "location": "query", "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "type": "string" }, "oauth_token": { "location": "query", @@ -191,9 +202,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", @@ -201,41 +212,35 @@ "default": "true", "type": "boolean" }, - "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" }, + "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": { + "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" ], - "location": "query", + "location": "query" + }, + "alt": { "description": "Data format for response.", "default": "json", "enum": [ @@ -243,30 +248,95 @@ "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", + "enumDescriptions": [ + "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" } }, "version": "v2", "baseUrl": "https://translation.googleapis.com/language/translate/", "kind": "discovery#restDescription", - "description": "The Google Cloud Translation API lets websites and programs integrate with\n Google Translate programmatically.", "servicePath": "language/translate/", + "description": "The Google Cloud Translation API lets websites and programs integrate with\n Google Translate programmatically.", "basePath": "/language/translate/", - "revision": "20170525", "documentationLink": "https://code.google.com/apis/language/translate/v2/getting_started.html", + "revision": "20170525", "id": "translate:v2", "discoveryVersion": "v1", "schemas": { + "LanguagesResource": { + "type": "object", + "properties": { + "name": { + "description": "Human readable name of the language localized to the target language.", + "type": "string" + }, + "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" + } + }, + "id": "LanguagesResource" + }, + "DetectionsListResponse": { + "type": "object", + "properties": { + "detections": { + "description": "A detections contains detection results of several text", + "items": { + "$ref": "DetectionsResource" + }, + "type": "array" + } + }, + "id": "DetectionsListResponse" + }, + "GetSupportedLanguagesRequest": { + "description": "The request message for discovering supported languages.", + "type": "object", + "properties": { + "target": { + "description": "The language to use to return localized, human readable names of supported\nlanguages.", + "type": "string" + } + }, + "id": "GetSupportedLanguagesRequest" + }, + "LanguagesListResponse": { + "type": "object", + "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.", + "items": { + "$ref": "LanguagesResource" + }, + "type": "array" + } + }, + "id": "LanguagesListResponse" + }, + "TranslationsResource": { + "properties": { + "detectedSourceLanguage": { + "description": "The source language of the initial request, detected automatically, if\nno source language was passed within the initial request. If the\nsource language was passed, auto-detection of the language will not\noccur and this field will be empty.", + "type": "string" + }, + "model": { + "description": "The `model` type used for this translation. Valid values are\nlisted in public documentation. Can be different from requested `model`.\nPresent only if specific model type was explicitly requested.", + "type": "string" + }, + "translatedText": { + "description": "Text translated into the target language.", + "type": "string" + } + }, + "id": "TranslationsResource", + "type": "object" + }, "DetectionsResource": { "id": "DetectionsResource", "description": "An array of languages which we detect for the given text The most likely language list first.", @@ -290,25 +360,9 @@ }, "type": "array" }, - "TranslationsResource": { - "type": "object", - "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" - }, "TranslationsListResponse": { + "description": "The main language translation response message.", + "type": "object", "properties": { "translations": { "description": "Translations contains list of translation results of given text", @@ -318,14 +372,14 @@ "type": "array" } }, - "id": "TranslationsListResponse", - "description": "The main language translation response message.", - "type": "object" + "id": "TranslationsListResponse" }, "TranslateTextRequest": { - "description": "The main translation request message for the Cloud Translation API.", - "type": "object", "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" @@ -344,17 +398,13 @@ "source": { "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.", "type": "string" - }, - "model": { - "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", - "type": "string" } }, - "id": "TranslateTextRequest" + "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.", @@ -364,65 +414,16 @@ "type": "array" } }, - "id": "DetectLanguageRequest" - }, - "LanguagesResource": { - "properties": { - "name": { - "description": "Human readable name of the language localized to the target language.", - "type": "string" - }, - "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" - } - }, - "id": "LanguagesResource", - "type": "object" - }, - "DetectionsListResponse": { - "properties": { - "detections": { - "description": "A detections contains detection results of several text", - "items": { - "$ref": "DetectionsResource" - }, - "type": "array" - } - }, - "id": "DetectionsListResponse", + "id": "DetectLanguageRequest", + "description": "The request message for language detection.", "type": "object" - }, - "GetSupportedLanguagesRequest": { - "description": "The request message for discovering supported languages.", - "type": "object", - "properties": { - "target": { - "description": "The language to use to return localized, human readable names of supported\nlanguages.", - "type": "string" - } - }, - "id": "GetSupportedLanguagesRequest" - }, - "LanguagesListResponse": { - "type": "object", - "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.", - "items": { - "$ref": "LanguagesResource" - }, - "type": "array" - } - }, - "id": "LanguagesListResponse" } }, + "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" }, - "protocol": "rest", "canonicalName": "Translate", "auth": { "oauth2": { @@ -435,6 +436,5 @@ } } } - }, - "rootUrl": "https://translation.googleapis.com/" + } } diff --git a/DiscoveryJson/videointelligence_v1beta1.json b/DiscoveryJson/videointelligence_v1beta1.json index 5b2576fa52..9cda972d50 100644 --- a/DiscoveryJson/videointelligence_v1beta1.json +++ b/DiscoveryJson/videointelligence_v1beta1.json @@ -1,31 +1,45 @@ { - "title": "Google Cloud Video Intelligence API", - "ownerName": "Google", "resources": { "videos": { "methods": { "annotate": { - "httpMethod": "POST", - "parameterOrder": [], + "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).", "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)." + "path": "v1beta1/videos:annotate" } } } }, "parameters": { + "pp": { + "location": "query", + "description": "Pretty-print response.", + "default": "true", + "type": "boolean" + }, + "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\").", @@ -38,9 +52,9 @@ "type": "boolean" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "uploadType": { "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", @@ -53,8 +67,6 @@ "type": "string" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -63,9 +75,17 @@ "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": [ @@ -73,18 +93,12 @@ "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": { - "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": "API key. 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.", @@ -92,32 +106,16 @@ "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.", - "default": "true", - "type": "boolean", - "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://videointelligence.googleapis.com/", - "servicePath": "", "kind": "discovery#restDescription", "description": "Google Cloud Video Intelligence API.", + "servicePath": "", "basePath": "", "revision": "20170713", "documentationLink": "https://cloud.google.com/video-intelligence/docs/", @@ -125,105 +123,7 @@ "discoveryVersion": "v1", "version_module": "True", "schemas": { - "GoogleCloudVideointelligenceV1_VideoSegment": { - "description": "Video segment.", - "type": "object", - "properties": { - "startTime": { - "format": "google-duration", - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", - "type": "string" - }, - "endTime": { - "type": "string", - "format": "google-duration", - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive)." - } - }, - "id": "GoogleCloudVideointelligenceV1_VideoSegment" - }, - "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": { - "description": "Video annotation request.", - "type": "object", - "properties": { - "inputContent": { - "type": "string", - "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." - }, - "outputUri": { - "type": "string", - "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)." - }, - "features": { - "enumDescriptions": [ - "Unspecified.", - "Label detection. Detect objects, such as dog or flower.", - "Shot change detection.", - "Safe search detection." - ], - "description": "Requested video annotation features.", - "items": { - "enum": [ - "FEATURE_UNSPECIFIED", - "LABEL_DETECTION", - "SHOT_CHANGE_DETECTION", - "SAFE_SEARCH_DETECTION" - ], - "type": "string" - }, - "type": "array" - }, - "videoContext": { - "description": "Additional video context and/or feature-specific parameters.", - "$ref": "GoogleCloudVideointelligenceV1beta1_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" - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" - }, - "GoogleCloudVideointelligenceV1beta1_LabelLocation": { - "description": "Label location.", - "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." - ] - }, - "confidence": { - "format": "float", - "description": "Confidence that the label is accurate. Range: [0, 1].", - "type": "number" - }, - "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": "GoogleCloudVideointelligenceV1beta1_LabelLocation" - }, "GoogleCloudVideointelligenceV1beta1_VideoSegment": { - "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment", "description": "Video segment.", "type": "object", "properties": { @@ -237,7 +137,8 @@ "description": "Start offset in microseconds (inclusive). Unset means 0.", "type": "string" } - } + }, + "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" }, "GoogleCloudVideointelligenceV1_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.", @@ -275,7 +176,8 @@ "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": { - "medical": { + "racy": { + "description": "Likelihood of racy content.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -292,10 +194,14 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Likelihood of medical content." + ] }, - "adult": { + "timeOffset": { + "format": "int64", + "description": "Video time offset in microseconds.", + "type": "string" + }, + "violent": { "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -312,10 +218,18 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood of adult content.", + "description": "Likelihood of violent content.", "type": "string" }, - "racy": { + "spoof": { + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -324,23 +238,12 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood of racy content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "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" }, - "timeOffset": { + "medical": { + "description": "Likelihood of medical content.", "type": "string", - "format": "int64", - "description": "Video time offset in microseconds." - }, - "spoof": { "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -356,11 +259,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" + ] }, - "violent": { + "adult": { + "description": "Likelihood of adult content.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -376,14 +279,14 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Likelihood of violent content.", - "type": "string" + ] } }, "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" }, "GoogleCloudVideointelligenceV1_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/).", @@ -405,9 +308,7 @@ "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress", - "description": "Annotation progress for a single video.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" }, "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.", @@ -423,46 +324,13 @@ }, "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1_LabelLocation": { - "description": "Label location.", - "type": "object", - "properties": { - "segment": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment", - "description": "Video segment. Unset for video-level labels.\nSet to a frame timestamp for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested)." - }, - "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" - ], - "description": "Label level." - }, - "confidence": { - "type": "number", - "format": "float", - "description": "Confidence that the label is accurate. Range: [0, 1]." - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelLocation" - }, "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "properties": { "error": { - "$ref": "GoogleRpc_Status", - "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail.", + "$ref": "GoogleRpc_Status" }, "shotAnnotations": { "description": "Shot annotations. Each shot is represented as a video segment.", @@ -490,11 +358,44 @@ "type": "array" } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults", - "description": "Annotation results for a single video." + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" }, - "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.", + "GoogleCloudVideointelligenceV1_LabelLocation": { + "description": "Label location.", + "type": "object", + "properties": { + "segment": { + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment", + "description": "Video segment. Unset for video-level labels.\nSet to a frame timestamp for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested)." + }, + "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": { + "format": "float", + "description": "Confidence that the label is accurate. Range: [0, 1].", + "type": "number" + } + }, + "id": "GoogleCloudVideointelligenceV1_LabelLocation" + }, + "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": { @@ -512,13 +413,13 @@ "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": { "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.", "type": "object" @@ -528,16 +429,16 @@ "type": "string" }, "error": { - "$ref": "GoogleRpc_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": "GoogleRpc_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" - }, - "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.", - "type": "object" + } } }, "id": "GoogleLongrunning_Operation" @@ -546,17 +447,6 @@ "description": "Annotation results for a single video.", "type": "object", "properties": { - "safeSearchAnnotations": { - "description": "Safe search annotations.", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" - }, - "type": "array" - }, - "inputUri": { - "type": "string", - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/)." - }, "labelAnnotations": { "description": "Label annotations. There is exactly one element for each unique label.", "items": { @@ -569,15 +459,40 @@ "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.", "items": { "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" }, - "type": "array", - "description": "Shot annotations. Each shot is represented as a video segment." + "type": "array" + }, + "safeSearchAnnotations": { + "description": "Safe search annotations.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" + }, + "type": "array" + }, + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" } }, "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" }, + "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": { + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" + }, + "type": "array" + } + }, + "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse" + }, "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { "description": "Label annotation.", "type": "object", @@ -600,65 +515,50 @@ }, "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" }, - "GoogleCloudVideointelligenceV1_AnnotateVideoResponse": { - "type": "object", - "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" - }, - "type": "array" - } - }, - "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." - }, "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": { "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "items": { "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" }, - "type": "array", - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`." + "type": "array" } }, "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse" }, - "GoogleCloudVideointelligenceV1_LabelAnnotation": { - "description": "Label annotation.", + "GoogleCloudVideointelligenceV1beta1_VideoContext": { + "description": "Video context and/or feature-specific parameters.", "type": "object", "properties": { - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "safeSearchDetectionModel": { + "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).", "type": "string" }, - "locations": { - "description": "Where the label was detected and with what confidence.", + "segments": { + "description": "Video segments to annotate. The segments may overlap and are not required\nto be contiguous or span the whole video. If unspecified, each video\nis treated as a single segment.", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelLocation" + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" }, "type": "array" }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", + "labelDetectionModel": { + "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" - }, - "GoogleCloudVideointelligenceV1beta1_VideoContext": { - "description": "Video context and/or feature-specific parameters.", - "type": "object", - "properties": { + }, "shotChangeDetectionModel": { - "type": "string", - "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default)." + "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", @@ -666,35 +566,36 @@ "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." - ] + "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).", + } + }, + "id": "GoogleCloudVideointelligenceV1beta1_VideoContext" + }, + "GoogleCloudVideointelligenceV1_LabelAnnotation": { + "description": "Label annotation.", + "type": "object", + "properties": { + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", "type": "string" }, - "segments": { + "locations": { + "description": "Where the label was detected and with what confidence.", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + "$ref": "GoogleCloudVideointelligenceV1_LabelLocation" }, - "type": "array", - "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" }, - "labelDetectionModel": { - "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoContext" + "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" }, "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { "description": "Annotation progress for a single video.", @@ -726,6 +627,15 @@ "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": { + "format": "int32", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "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.", "items": { @@ -736,25 +646,113 @@ } }, "type": "array" + } + }, + "id": "GoogleRpc_Status" + }, + "GoogleCloudVideointelligenceV1_VideoSegment": { + "description": "Video segment.", + "type": "object", + "properties": { + "endTime": { + "format": "google-duration", + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "type": "string" }, - "code": { - "type": "integer", - "format": "int32", - "description": "The status code, which should be an enum value of google.rpc.Code." + "startTime": { + "format": "google-duration", + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "type": "string" + } + }, + "id": "GoogleCloudVideointelligenceV1_VideoSegment" + }, + "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": { + "description": "Video annotation request.", + "type": "object", + "properties": { + "features": { + "enumDescriptions": [ + "Unspecified.", + "Label detection. Detect objects, such as dog or flower.", + "Shot change detection.", + "Safe search detection." + ], + "description": "Requested video annotation features.", + "items": { + "enum": [ + "FEATURE_UNSPECIFIED", + "LABEL_DETECTION", + "SHOT_CHANGE_DETECTION", + "SAFE_SEARCH_DETECTION" + ], + "type": "string" + }, + "type": "array" }, - "message": { - "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", + "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": "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.", + "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": "GoogleRpc_Status" + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" + }, + "GoogleCloudVideointelligenceV1beta1_LabelLocation": { + "description": "Label location.", + "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)." + }, + "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" + }, + "confidence": { + "format": "float", + "description": "Confidence that the label is accurate. Range: [0, 1].", + "type": "number" + } + }, + "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" } }, + "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": "Cloud Video Intelligence", "auth": { "oauth2": { @@ -768,5 +766,7 @@ "rootUrl": "https://videointelligence.googleapis.com/", "ownerDomain": "google.com", "name": "videointelligence", - "batchPath": "batch" + "batchPath": "batch", + "title": "Google Cloud Video Intelligence API", + "ownerName": "Google" } diff --git a/DiscoveryJson/vision_v1.json b/DiscoveryJson/vision_v1.json index cf1ae6cda0..e37d75e7d5 100644 --- a/DiscoveryJson/vision_v1.json +++ b/DiscoveryJson/vision_v1.json @@ -1,8 +1,18 @@ { + "version": "v1", + "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": "", + "revision": "20170713", + "documentationLink": "https://cloud.google.com/vision/", + "id": "vision:v1", "discoveryVersion": "v1", "version_module": "True", "schemas": { "AnnotateImageResponse": { + "id": "AnnotateImageResponse", "description": "Response to an image annotation request.", "type": "object", "properties": { @@ -32,11 +42,11 @@ "$ref": "ImageProperties" }, "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", "items": { "$ref": "EntityAnnotation" }, - "type": "array", - "description": "If present, logo detection has completed successfully." + "type": "array" }, "cropHintsAnnotation": { "description": "If present, crop hints have completed successfully.", @@ -54,19 +64,18 @@ "type": "array" }, "safeSearchAnnotation": { - "$ref": "SafeSearchAnnotation", - "description": "If present, safe-search annotation has completed successfully." + "description": "If present, safe-search annotation has completed successfully.", + "$ref": "SafeSearchAnnotation" }, "error": { "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set.", "$ref": "Status" }, "fullTextAnnotation": { - "$ref": "TextAnnotation", - "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext." + "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" } - }, - "id": "AnnotateImageResponse" + } }, "CropHintsParams": { "description": "Parameters for crop hints annotation request.", @@ -87,11 +96,26 @@ "description": "Logical element on the page.", "type": "object", "properties": { + "paragraphs": { + "description": "List of paragraphs in this block (if this blocks is of type text).", + "items": { + "$ref": "Paragraph" + }, + "type": "array" + }, "property": { - "description": "Additional information detected for the block.", - "$ref": "TextProperty" + "$ref": "TextProperty", + "description": "Additional information detected for the block." }, "blockType": { + "enumDescriptions": [ + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." + ], "enum": [ "UNKNOWN", "TEXT", @@ -101,61 +125,20 @@ "BARCODE" ], "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." - ] + "type": "string" }, "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 * 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)." - }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", - "items": { - "$ref": "Paragraph" - }, - "type": "array" } }, "id": "Block" }, - "Property": { - "properties": { - "value": { - "description": "Value of the property.", - "type": "string" - }, - "uint64Value": { - "format": "uint64", - "description": "Value of numeric properties.", - "type": "string" - }, - "name": { - "description": "Name of the property.", - "type": "string" - } - }, - "id": "Property", - "description": "A `Property` consists of a user-supplied name/value pair.", - "type": "object" - }, "WebDetection": { + "id": "WebDetection", "description": "Relevant information for the image from the Internet.", "type": "object", "properties": { - "fullMatchingImages": { - "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", - "items": { - "$ref": "WebImage" - }, - "type": "array" - }, "webEntities": { "description": "Deduced entities from similar images on the Internet.", "items": { @@ -164,11 +147,11 @@ "type": "array" }, "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", "items": { "$ref": "WebPage" }, - "type": "array", - "description": "Web pages containing the matching images from the Internet." + "type": "array" }, "visuallySimilarImages": { "description": "The visually similar image results.", @@ -183,11 +166,18 @@ "$ref": "WebImage" }, "type": "array" + }, + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "items": { + "$ref": "WebImage" + }, + "type": "array" } - }, - "id": "WebDetection" + } }, "BatchAnnotateImagesResponse": { + "id": "BatchAnnotateImagesResponse", "description": "Response to a batch image annotation request.", "type": "object", "properties": { @@ -198,10 +188,10 @@ }, "type": "array" } - }, - "id": "BatchAnnotateImagesResponse" + } }, "ImageSource": { + "id": "ImageSource", "description": "External image source (Google Cloud Storage image location).", "type": "object", "properties": { @@ -213,8 +203,7 @@ "description": "Image URI which supports:\n1) Google Cloud Storage image URI, which must be in the following form:\n`gs://bucket_name/object_name` (for details, see\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris)).\nNOTE: Cloud Storage object versioning is not supported.\n2) Publicly accessible image HTTP/HTTPS URL.\nThis is preferred over the legacy `gcs_image_uri` above. When both\n`gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.", "type": "string" } - }, - "id": "ImageSource" + } }, "LocationInfo": { "description": "Detected entity location information.", @@ -227,10 +216,35 @@ }, "id": "LocationInfo" }, + "Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "type": "object", + "properties": { + "value": { + "description": "Value of the property.", + "type": "string" + }, + "uint64Value": { + "format": "uint64", + "description": "Value of numeric properties.", + "type": "string" + }, + "name": { + "description": "Name of the property.", + "type": "string" + } + }, + "id": "Property" + }, "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": { + "format": "float", + "description": "Y coordinate.", + "type": "number" + }, "z": { "format": "float", "description": "Z coordinate (or depth).", @@ -240,16 +254,12 @@ "format": "float", "description": "X coordinate.", "type": "number" - }, - "y": { - "format": "float", - "description": "Y coordinate.", - "type": "number" } }, "id": "Position" }, "ColorInfo": { + "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", "properties": { @@ -259,37 +269,54 @@ "type": "number" }, "color": { - "$ref": "Color", - "description": "RGB components of the color." + "description": "RGB components of the color.", + "$ref": "Color" }, "score": { "format": "float", "description": "Image-specific score for this color. Value in range [0, 1].", "type": "number" } - }, - "id": "ColorInfo" + } }, "WebPage": { + "id": "WebPage", + "description": "Metadata for web pages.", "type": "object", "properties": { + "url": { + "description": "The result web page URL.", + "type": "string" + }, "score": { "format": "float", "description": "Overall relevancy score for the web page.\nNot normalized and not comparable across different image queries.", "type": "number" - }, - "url": { - "description": "The result web page URL.", - "type": "string" } - }, - "id": "WebPage", - "description": "Metadata for web pages." + } }, "EntityAnnotation": { + "id": "EntityAnnotation", "description": "Set of detected entity features.", "type": "object", "properties": { + "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": { + "format": "float", + "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].", + "type": "number" + }, + "description": { + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" + }, "properties": { "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", "items": { @@ -303,11 +330,11 @@ "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.", "items": { "$ref": "LocationInfo" }, - "type": "array", - "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" }, "mid": { "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search API](https://developers.google.com/knowledge-graph/).", @@ -317,28 +344,11 @@ "format": "float", "description": "The 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].", "type": "number" - }, - "boundingPoly": { - "$ref": "BoundingPoly", - "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" - }, - "topicality": { - "format": "float", - "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].", - "type": "number" - }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", - "type": "string" } - }, - "id": "EntityAnnotation" + } }, "CropHint": { + "id": "CropHint", "description": "Single crop hint that is used to generate a new crop when serving an image.", "type": "object", "properties": { @@ -353,16 +363,18 @@ "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`." + "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`.", + "$ref": "BoundingPoly" } - }, - "id": "CropHint" + } }, "Landmark": { + "description": "A face-specific landmark (for example, a face feature).\nLandmark positions may fall outside the bounds of the image\nif the face is near one or more edges of the image.\nTherefore it is NOT guaranteed that `0 \u003c= x \u003c width` or\n`0 \u003c= y \u003c height`.", "type": "object", "properties": { "type": { + "description": "Face landmark type.", + "type": "string", "enumDescriptions": [ "Unknown face landmark detected. Should not be filled.", "Left eye.", @@ -436,41 +448,42 @@ "CHIN_GNATHION", "CHIN_LEFT_GONION", "CHIN_RIGHT_GONION" - ], - "description": "Face landmark type.", - "type": "string" + ] }, "position": { - "$ref": "Position", - "description": "Face landmark position." + "description": "Face landmark position.", + "$ref": "Position" } }, - "id": "Landmark", - "description": "A face-specific landmark (for example, a face feature).\nLandmark positions may fall outside the bounds of the image\nif the face is near one or more edges of the image.\nTherefore it is NOT guaranteed that `0 \u003c= x \u003c width` or\n`0 \u003c= y \u003c height`." + "id": "Landmark" }, "WebImage": { + "id": "WebImage", "description": "Metadata for online images.", "type": "object", "properties": { + "url": { + "description": "The result image URL.", + "type": "string" + }, "score": { "format": "float", "description": "Overall relevancy score for the image.\nNot normalized and not comparable across different image queries.", "type": "number" - }, - "url": { - "description": "The result image URL.", - "type": "string" } - }, - "id": "WebImage" + } }, "Word": { "description": "A word representation.", "type": "object", "properties": { + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the word." + }, "boundingBox": { - "$ref": "BoundingPoly", - "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)." + "description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).", + "$ref": "BoundingPoly" }, "symbols": { "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", @@ -478,32 +491,37 @@ "$ref": "Symbol" }, "type": "array" - }, - "property": { - "$ref": "TextProperty", - "description": "Additional information detected for the word." } }, "id": "Word" }, "Image": { - "id": "Image", "description": "Client image to perform Google Cloud Vision API tasks over.", "type": "object", "properties": { "source": { - "description": "Google Cloud Storage image location. If both `content` and `source`\nare provided for an image, `content` takes precedence and is\nused to perform the image annotation request.", - "$ref": "ImageSource" + "$ref": "ImageSource", + "description": "Google Cloud Storage image location. If both `content` and `source`\nare provided for an image, `content` takes precedence and is\nused to perform the image annotation request." }, "content": { "format": "byte", "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.", "type": "string" } - } + }, + "id": "Image" }, "Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "type": "object", "properties": { + "words": { + "description": "List of words in this paragraph.", + "items": { + "$ref": "Word" + }, + "type": "array" + }, "property": { "$ref": "TextProperty", "description": "Additional information detected for the paragraph." @@ -511,25 +529,20 @@ "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)." - }, - "words": { - "description": "List of words in this paragraph.", - "items": { - "$ref": "Word" - }, - "type": "array" } }, - "id": "Paragraph", - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object" + "id": "Paragraph" }, "FaceAnnotation": { "description": "A face annotation object contains the results of face detection.", "type": "object", "properties": { - "angerLikelihood": { - "description": "Anger likelihood.", + "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." + }, + "surpriseLikelihood": { + "description": "Surprise likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -555,7 +568,7 @@ }, "type": "array" }, - "surpriseLikelihood": { + "angerLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -572,9 +585,14 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Surprise likelihood.", + "description": "Anger likelihood.", "type": "string" }, + "landmarkingConfidence": { + "format": "float", + "description": "Face landmarking confidence. Range [0, 1].", + "type": "number" + }, "joyLikelihood": { "enumDescriptions": [ "Unknown likelihood.", @@ -595,21 +613,6 @@ "description": "Joy likelihood.", "type": "string" }, - "landmarkingConfidence": { - "format": "float", - "description": "Face landmarking confidence. Range [0, 1].", - "type": "number" - }, - "detectionConfidence": { - "format": "float", - "description": "Detection confidence. Range [0, 1].", - "type": "number" - }, - "panAngle": { - "type": "number", - "format": "float", - "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]." - }, "underExposedLikelihood": { "enumDescriptions": [ "Unknown likelihood.", @@ -630,6 +633,16 @@ "description": "Under-exposed likelihood.", "type": "string" }, + "panAngle": { + "format": "float", + "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].", + "type": "number" + }, + "detectionConfidence": { + "format": "float", + "description": "Detection confidence. Range [0, 1].", + "type": "number" + }, "blurredLikelihood": { "enumDescriptions": [ "Unknown likelihood.", @@ -651,6 +664,8 @@ "type": "string" }, "headwearLikelihood": { + "description": "Headwear likelihood.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -666,9 +681,7 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Headwear likelihood.", - "type": "string" + ] }, "boundingPoly": { "$ref": "BoundingPoly", @@ -703,15 +716,12 @@ "format": "float", "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].", "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": "BoundingPoly" } }, "id": "FaceAnnotation" }, "BatchAnnotateImagesRequest": { + "id": "BatchAnnotateImagesRequest", "description": "Multiple image annotation requests are batched into a single service call.", "type": "object", "properties": { @@ -722,14 +732,26 @@ }, "type": "array" } - }, - "id": "BatchAnnotateImagesRequest" + } }, "DetectedBreak": { + "id": "DetectedBreak", "description": "Detected start or end of a structural component.", "type": "object", "properties": { + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + }, "type": { + "enumDescriptions": [ + "Unknown break label type.", + "Regular space.", + "Sure space (very wide).", + "Line-wrapping break.", + "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.", + "Line break that ends a paragraph." + ], "enum": [ "UNKNOWN", "SPACE", @@ -739,52 +761,36 @@ "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." - ] - }, - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" + "type": "string" } - }, - "id": "DetectedBreak" + } }, "ImageContext": { + "id": "ImageContext", "description": "Image context and/or feature-specific parameters.", "type": "object", "properties": { + "latLongRect": { + "$ref": "LatLongRect", + "description": "lat/long rectangle that specifies the location of the image." + }, + "cropHintsParams": { + "description": "Parameters for crop hints annotation request.", + "$ref": "CropHintsParams" + }, "languageHints": { "description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).", "items": { "type": "string" }, "type": "array" - }, - "latLongRect": { - "$ref": "LatLongRect", - "description": "lat/long rectangle that specifies the location of the image." - }, - "cropHintsParams": { - "$ref": "CropHintsParams", - "description": "Parameters for crop hints annotation request." } - }, - "id": "ImageContext" + } }, "Page": { + "description": "Detected page from OCR.", + "type": "object", "properties": { - "width": { - "format": "int32", - "description": "Page width in pixels.", - "type": "integer" - }, "blocks": { "description": "List of blocks of text, images etc on this page.", "items": { @@ -793,18 +799,21 @@ "type": "array" }, "property": { - "$ref": "TextProperty", - "description": "Additional information detected on the page." + "description": "Additional information detected on the page.", + "$ref": "TextProperty" }, "height": { "format": "int32", "description": "Page height in pixels.", "type": "integer" + }, + "width": { + "format": "int32", + "description": "Page width in pixels.", + "type": "integer" } }, - "id": "Page", - "description": "Detected page from OCR.", - "type": "object" + "id": "Page" }, "AnnotateImageRequest": { "id": "AnnotateImageRequest", @@ -823,8 +832,8 @@ "type": "array" }, "image": { - "$ref": "Image", - "description": "The image to be processed." + "description": "The image to be processed.", + "$ref": "Image" } } }, @@ -856,40 +865,42 @@ "id": "Status" }, "Symbol": { + "description": "A single symbol representation.", "type": "object", "properties": { - "text": { - "description": "The actual UTF-8 representation of the symbol.", - "type": "string" - }, "property": { "description": "Additional information detected for the symbol.", "$ref": "TextProperty" }, "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)." + "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": "BoundingPoly" + }, + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" } }, - "id": "Symbol", - "description": "A single symbol representation." + "id": "Symbol" }, "LatLongRect": { + "id": "LatLongRect", + "description": "Rectangle determined by min and max `LatLng` pairs.", + "type": "object", "properties": { - "maxLatLng": { - "$ref": "LatLng", - "description": "Max lat/long pair." - }, "minLatLng": { "description": "Min lat/long pair.", "$ref": "LatLng" + }, + "maxLatLng": { + "description": "Max lat/long pair.", + "$ref": "LatLng" } - }, - "id": "LatLongRect", - "description": "Rectangle determined by min and max `LatLng` pairs.", - "type": "object" + } }, "CropHintsAnnotation": { + "id": "CropHintsAnnotation", + "description": "Set of crop hints that are used to generate new crops when serving images.", "type": "object", "properties": { "cropHints": { @@ -899,36 +910,30 @@ }, "type": "array" } - }, - "id": "CropHintsAnnotation", - "description": "Set of crop hints that are used to generate new crops when serving images." + } }, "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.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)", "type": "object", "properties": { - "latitude": { + "longitude": { "format": "double", - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", "type": "number" }, - "longitude": { + "latitude": { "format": "double", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "type": "number" } - } + }, + "id": "LatLng" }, "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", "properties": { - "red": { - "format": "float", - "description": "The amount of red in the color as a value in the interval [0, 1].", - "type": "number" - }, "alpha": { "format": "float", "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).", @@ -943,20 +948,24 @@ "format": "float", "description": "The amount of green in the color as a value in the interval [0, 1].", "type": "number" + }, + "red": { + "format": "float", + "description": "The amount of red in the color as a value in the interval [0, 1].", + "type": "number" } - }, - "id": "Color" + } }, "ImageProperties": { + "id": "ImageProperties", + "description": "Stores image properties, such as dominant colors.", "type": "object", "properties": { "dominantColors": { - "$ref": "DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." + "description": "If present, dominant colors completed successfully.", + "$ref": "DominantColorsAnnotation" } - }, - "id": "ImageProperties", - "description": "Stores image properties, such as dominant colors." + } }, "Feature": { "description": "Users describe the type of Google Cloud Vision API tasks to perform over\nimages by using *Feature*s. Each Feature indicates a type of image\ndetection task to perform. Features encode the Cloud Vision API\nvertical to operate on and the number of top-scoring results to return.", @@ -968,6 +977,8 @@ "type": "integer" }, "type": { + "description": "The feature type.", + "type": "string", "enumDescriptions": [ "Unspecified feature type.", "Run face detection.", @@ -993,18 +1004,19 @@ "IMAGE_PROPERTIES", "CROP_HINTS", "WEB_DETECTION" - ], - "description": "The feature type.", - "type": "string" + ] } }, "id": "Feature" }, "SafeSearchAnnotation": { + "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", "properties": { "medical": { + "description": "Likelihood that this is a medical image.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1020,9 +1032,7 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Likelihood that this is a medical image.", - "type": "string" + ] }, "violence": { "description": "Violence likelihood.", @@ -1045,6 +1055,7 @@ ] }, "adult": { + "description": "Represents the adult content likelihood for the image.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -1061,11 +1072,9 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Represents the adult content likelihood for the image." + ] }, "spoof": { - "type": "string", "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1082,10 +1091,10 @@ "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." + "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": "SafeSearchAnnotation" + } }, "DominantColorsAnnotation": { "description": "Set of dominant colors and their corresponding scores.", @@ -1102,6 +1111,7 @@ "id": "DominantColorsAnnotation" }, "TextAnnotation": { + "id": "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\nrefer to the google.cloud.vision.v1.TextAnnotation.TextProperty message\ndefinition below for more detail.", "type": "object", "properties": { @@ -1116,21 +1126,20 @@ "description": "UTF-8 text detected on the pages.", "type": "string" } - }, - "id": "TextAnnotation" + } }, "DetectedLanguage": { "description": "Detected language for a structural component.", "type": "object", "properties": { + "languageCode": { + "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.", + "type": "string" + }, "confidence": { "format": "float", "description": "Confidence of detected language. Range [0, 1].", "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": "DetectedLanguage" @@ -1173,6 +1182,7 @@ "id": "WebEntity" }, "BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", "type": "object", "properties": { "vertices": { @@ -1183,10 +1193,10 @@ "type": "array" } }, - "id": "BoundingPoly", - "description": "A bounding polygon for the detected image annotation." + "id": "BoundingPoly" }, "TextProperty": { + "description": "Additional information detected on the structural component.", "type": "object", "properties": { "detectedLanguages": { @@ -1197,17 +1207,16 @@ "type": "array" }, "detectedBreak": { - "$ref": "DetectedBreak", - "description": "Detected start or end of a text segment." + "description": "Detected start or end of a text segment.", + "$ref": "DetectedBreak" } }, - "id": "TextProperty", - "description": "Additional information detected on the structural component." + "id": "TextProperty" } }, "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": "Vision", @@ -1233,6 +1242,8 @@ "images": { "methods": { "annotate": { + "path": "v1/images:annotate", + "id": "vision.images.annotate", "description": "Run image detection and annotation for a batch of images.", "request": { "$ref": "BatchAnnotateImagesRequest" @@ -1247,51 +1258,80 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-vision" ], - "flatPath": "v1/images:annotate", - "path": "v1/images:annotate", - "id": "vision.images.annotate" + "flatPath": "v1/images:annotate" } } } }, "parameters": { - "upload_protocol": { + "access_token": { + "description": "OAuth access token.", + "type": "string", + "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": { - "description": "Returns response with indentations and line breaks.", + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "type": "string", + "location": "query" + }, + "pp": { + "description": "Pretty-print response.", "default": "true", "type": "boolean", "location": "query" }, - "fields": { + "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": { "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "description": "Returns response with indentations and line breaks.", + "default": "true", + "type": "boolean" }, "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" + }, + "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" - }, - "callback": { "location": "query", - "description": "JSONP", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", "type": "string" }, "alt": { @@ -1309,46 +1349,6 @@ "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.", - "default": "true", - "type": "boolean", - "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://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": "20170713", - "documentationLink": "https://cloud.google.com/vision/", - "id": "vision:v1" + } } diff --git a/DiscoveryJson/youtubeAnalytics_v1.json b/DiscoveryJson/youtubeAnalytics_v1.json index 5b10b1f61a..d575007754 100644 --- a/DiscoveryJson/youtubeAnalytics_v1.json +++ b/DiscoveryJson/youtubeAnalytics_v1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/fbj26hdsXtgM-ShubvUJMNgdUKU\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/VgkbhXgggvenma-YIxStN-Osh34\"", "discoveryVersion": "v1", "id": "youtubeAnalytics:v1", "name": "youtubeAnalytics", "canonicalName": "YouTube Analytics", "version": "v1", - "revision": "20170715", + "revision": "20170717", "title": "YouTube Analytics API", "description": "Retrieves your YouTube Analytics data.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/youtubeAnalytics_v1beta1.json b/DiscoveryJson/youtubeAnalytics_v1beta1.json index 1970089ee4..2fe168ac55 100644 --- a/DiscoveryJson/youtubeAnalytics_v1beta1.json +++ b/DiscoveryJson/youtubeAnalytics_v1beta1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/NFiNgK45vzOEkVzjQCdtT4bGjlE\"", + "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/C1k_gbvua6oUaaHe-z5hMHXSkvE\"", "discoveryVersion": "v1", "id": "youtubeAnalytics:v1beta1", "name": "youtubeAnalytics", "canonicalName": "YouTube Analytics", "version": "v1beta1", - "revision": "20170715", + "revision": "20170717", "title": "YouTube Analytics API", "description": "Retrieves your YouTube Analytics data.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/youtubereporting_v1.json b/DiscoveryJson/youtubereporting_v1.json index 55932933b6..680d381cad 100644 --- a/DiscoveryJson/youtubereporting_v1.json +++ b/DiscoveryJson/youtubereporting_v1.json @@ -1,140 +1,69 @@ { - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "resources": { - "jobs": { - "resources": { - "reports": { - "methods": { - "get": { - "flatPath": "v1/jobs/{jobId}/reports/{reportId}", - "path": "v1/jobs/{jobId}/reports/{reportId}", - "id": "youtubereporting.jobs.reports.get", - "description": "Gets the metadata of a specific report.", - "httpMethod": "GET", - "parameterOrder": [ - "jobId", - "reportId" - ], - "response": { - "$ref": "Report" - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "jobId": { - "location": "path", - "description": "The ID of the job.", - "type": "string", - "required": true - }, - "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" - }, - "reportId": { - "location": "path", - "description": "The ID of the report to retrieve.", - "type": "string", - "required": true - } - } - }, - "list": { - "response": { - "$ref": "ListReportsResponse" - }, - "parameterOrder": [ - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "format": "int32", - "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", - "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" - }, - "startTimeBefore": { - "format": "google-datetime", - "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.", - "type": "string", - "location": "query" - }, - "jobId": { - "location": "path", - "description": "The ID of the job.", - "type": "string", - "required": true - }, - "createdAfter": { - "format": "google-datetime", - "description": "If set, only reports created after the specified date/time are returned.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.", - "type": "string", - "location": "query" - }, - "startTimeAtOrAfter": { - "format": "google-datetime", - "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs/{jobId}/reports", - "id": "youtubereporting.jobs.reports.list", - "path": "v1/jobs/{jobId}/reports", - "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist." + "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": "Media" + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "parameters": { + "resourceName": { + "location": "path", + "description": "Name of the media that is being downloaded. See\nReadRequest.resource_name.", + "type": "string", + "required": true, + "pattern": "^.+$" } - } + }, + "flatPath": "v1/media/{mediaId}", + "path": "v1/media/{+resourceName}", + "id": "youtubereporting.media.download" } - }, + } + }, + "jobs": { "methods": { "delete": { + "flatPath": "v1/jobs/{jobId}", + "path": "v1/jobs/{jobId}", + "id": "youtubereporting.jobs.delete", + "description": "Deletes a job.", "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, "parameterOrder": [ "jobId" ], + "response": { + "$ref": "Empty" + }, "scopes": [ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", "https://www.googleapis.com/auth/yt-analytics.readonly" ], "parameters": { + "jobId": { + "location": "path", + "description": "The ID of the job to delete.", + "type": "string", + "required": true + }, "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 delete.", - "type": "string", - "required": true, - "location": "path" } - }, - "flatPath": "v1/jobs/{jobId}", - "path": "v1/jobs/{jobId}", - "id": "youtubereporting.jobs.delete", - "description": "Deletes a job." + } }, "get": { "scopes": [ @@ -143,15 +72,15 @@ ], "parameters": { "jobId": { + "location": "path", "description": "The ID of the job to retrieve.", "type": "string", - "required": true, - "location": "path" + "required": true }, "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", - "location": "query" + "type": "string" } }, "flatPath": "v1/jobs/{jobId}", @@ -167,25 +96,11 @@ "httpMethod": "GET" }, "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [], - "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" - }, "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", - "location": "query" + "type": "boolean" }, "pageToken": { "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListJobs` method.", @@ -197,68 +112,38 @@ "description": "Requested page size. Server may return fewer jobs than requested.\nIf unspecified, server will pick an appropriate default.", "type": "integer", "location": "query" - } - }, - "flatPath": "v1/jobs", - "path": "v1/jobs", - "id": "youtubereporting.jobs.list", - "description": "Lists jobs." - }, - "create": { - "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" } }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], "flatPath": "v1/jobs", - "id": "youtubereporting.jobs.create", "path": "v1/jobs", + "id": "youtubereporting.jobs.list", + "description": "Lists jobs.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListJobsResponse" + } + }, + "create": { + "description": "Creates a job and returns it.", "request": { "$ref": "Job" }, - "description": "Creates a job and returns it.", "response": { "$ref": "Job" }, "parameterOrder": [], - "httpMethod": "POST" - } - } - }, - "reportTypes": { - "methods": { - "list": { - "id": "youtubereporting.reportTypes.list", - "path": "v1/reportTypes", - "description": "Lists report types.", - "response": { - "$ref": "ListReportTypesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { - "includeSystemManaged": { - "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned.", - "type": "boolean", - "location": "query" - }, - "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 `ListReportTypes` method.", - "type": "string" - }, - "pageSize": { - "format": "int32", - "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", - "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).", @@ -269,63 +154,168 @@ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", "https://www.googleapis.com/auth/yt-analytics.readonly" ], - "flatPath": "v1/reportTypes" + "flatPath": "v1/jobs", + "id": "youtubereporting.jobs.create", + "path": "v1/jobs" } - } - }, - "media": { - "methods": { - "download": { - "httpMethod": "GET", - "parameterOrder": [ - "resourceName" - ], - "response": { - "$ref": "Media" - }, - "parameters": { - "resourceName": { - "location": "path", - "description": "Name of the media that is being downloaded. See\nReadRequest.resource_name.", - "type": "string", - "required": true, - "pattern": "^.+$" + }, + "resources": { + "reports": { + "methods": { + "get": { + "description": "Gets the metadata of a specific report.", + "httpMethod": "GET", + "parameterOrder": [ + "jobId", + "reportId" + ], + "response": { + "$ref": "Report" + }, + "parameters": { + "jobId": { + "type": "string", + "required": true, + "location": "path", + "description": "The ID of the job." + }, + "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" + }, + "reportId": { + "location": "path", + "description": "The ID of the report to retrieve.", + "type": "string", + "required": true + } + }, + "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" + }, + "list": { + "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist.", + "httpMethod": "GET", + "parameterOrder": [ + "jobId" + ], + "response": { + "$ref": "ListReportsResponse" + }, + "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" + }, + "startTimeBefore": { + "format": "google-datetime", + "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.", + "type": "string", + "location": "query" + }, + "jobId": { + "description": "The ID of the job.", + "type": "string", + "required": true, + "location": "path" + }, + "createdAfter": { + "location": "query", + "format": "google-datetime", + "description": "If set, only reports created after the specified date/time are returned.", + "type": "string" + }, + "startTimeAtOrAfter": { + "location": "query", + "format": "google-datetime", + "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", + "type": "string" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "flatPath": "v1/jobs/{jobId}/reports", + "path": "v1/jobs/{jobId}/reports", + "id": "youtubereporting.jobs.reports.list" } + } + } + } + }, + "reportTypes": { + "methods": { + "list": { + "parameterOrder": [], + "response": { + "$ref": "ListReportTypesResponse" }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", "https://www.googleapis.com/auth/yt-analytics.readonly" ], - "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 + "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" + }, + "includeSystemManaged": { + "type": "boolean", + "location": "query", + "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned." + }, + "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 `ListReportTypes` method.", + "type": "string" + }, + "pageSize": { + "location": "query", + "format": "int32", + "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.", + "type": "integer" + } + }, + "flatPath": "v1/reportTypes", + "id": "youtubereporting.reportTypes.list", + "path": "v1/reportTypes", + "description": "Lists report types." } } } }, "parameters": { - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "type": "string", - "location": "query" - }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, "quotaUser": { "location": "query", "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", "type": "string" }, "pp": { - "location": "query", "description": "Pretty-print response.", "default": "true", - "type": "boolean" + "type": "boolean", + "location": "query" }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", @@ -338,50 +328,45 @@ "location": "query" }, "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.", "default": "true", - "type": "boolean", - "location": "query" + "type": "boolean" }, - "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" }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], "location": "query", "enum": [ "1", "2" ], "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 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", @@ -390,39 +375,68 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "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" } }, "schemas": { - "ListReportTypesResponse": { - "description": "Response message for ReportingService.ListReportTypes.", - "type": "object", + "ListReportsResponse": { "properties": { - "reportTypes": { + "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": { "description": "The list of report types.", "items": { - "$ref": "ReportType" + "$ref": "Report" }, "type": "array" - }, - "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" + "id": "ListReportsResponse", + "description": "Response message for ReportingService.ListReports.", + "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 `{}`.", + "Media": { + "description": "Media resource.", "type": "object", - "properties": {}, - "id": "Empty" + "properties": { + "resourceName": { + "description": "Name of the media resource.", + "type": "string" + } + }, + "id": "Media" }, "Report": { - "id": "Report", "description": "A report's metadata including the URL from which the report itself can be\ndownloaded.", "type": "object", "properties": { + "startTime": { + "format": "google-datetime", + "description": "The start of the time period that the report instance covers. The value is\ninclusive.", + "type": "string" + }, + "createTime": { + "format": "google-datetime", + "description": "The date/time when this report was created.", + "type": "string" + }, "jobId": { "description": "The ID of the job that created this report.", "type": "string" @@ -432,9 +446,9 @@ "type": "string" }, "endTime": { + "type": "string", "format": "google-datetime", - "description": "The end of the time period that the report instance covers. The value is\nexclusive.", - "type": "string" + "description": "The end of the time period that the report instance covers. The value is\nexclusive." }, "jobExpireTime": { "format": "google-datetime", @@ -444,30 +458,38 @@ "downloadUrl": { "description": "The URL from which the report can be downloaded (max. 1000 characters).", "type": "string" - }, - "startTime": { - "format": "google-datetime", - "description": "The start of the time period that the report instance covers. The value is\ninclusive.", - "type": "string" - }, - "createTime": { - "format": "google-datetime", - "description": "The date/time when this report was created.", - "type": "string" } - } + }, + "id": "Report" }, - "ReportType": { + "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" + }, + "ListReportTypesResponse": { + "description": "Response message for ReportingService.ListReportTypes.", "type": "object", "properties": { - "systemManaged": { - "type": "boolean", - "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." - }, - "id": { + "nextPageToken": { "type": "string", - "description": "The ID of the report type (max. 100 characters)." + "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." }, + "reportTypes": { + "description": "The list of report types.", + "items": { + "$ref": "ReportType" + }, + "type": "array" + } + }, + "id": "ListReportTypesResponse" + }, + "ReportType": { + "description": "A report type.", + "type": "object", + "properties": { "deprecateTime": { "format": "google-datetime", "description": "The date/time when this report type was/will be deprecated.", @@ -476,97 +498,75 @@ "name": { "description": "The name 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": { + "description": "The ID of the report type (max. 100 characters).", + "type": "string" } }, - "id": "ReportType", - "description": "A report type." + "id": "ReportType" }, "ListJobsResponse": { - "description": "Response message for ReportingService.ListJobs.", - "type": "object", "properties": { + "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" + }, "jobs": { "description": "The list of jobs.", "items": { "$ref": "Job" }, "type": "array" - }, - "nextPageToken": { - "description": "A token to retrieve next page of results.\nPass this value in the\nListJobsRequest.page_token\nfield in the subsequent call to `ListJobs` method to retrieve the next\npage of results.", - "type": "string" } }, - "id": "ListJobsResponse" + "id": "ListJobsResponse", + "description": "Response message for ReportingService.ListJobs.", + "type": "object" }, "Job": { "description": "A job creating reports of a specific type.", "type": "object", "properties": { - "createTime": { - "format": "google-datetime", - "description": "The creation date/time of the job.", + "systemManaged": { + "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", + "type": "boolean" + }, + "id": { + "description": "The server-generated ID of the job (max. 40 characters).", "type": "string" }, - "reportTypeId": { + "createTime": { "type": "string", - "description": "The type of reports this job creates. Corresponds to the ID of a\nReportType." + "format": "google-datetime", + "description": "The creation date/time of the job." }, "expireTime": { "format": "google-datetime", "description": "The date/time when this job will expire/expired. After a job expired, no\nnew reports are generated.", "type": "string" }, - "name": { - "type": "string", - "description": "The name of the job (max. 100 characters)." - }, - "id": { - "type": "string", - "description": "The server-generated ID of the job (max. 40 characters)." - }, - "systemManaged": { - "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", - "type": "boolean" - } - }, - "id": "Job" - }, - "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.", + "reportTypeId": { + "description": "The type of reports this job creates. Corresponds to the ID of a\nReportType.", "type": "string" }, - "reports": { - "description": "The list of report types.", - "items": { - "$ref": "Report" - }, - "type": "array" - } - }, - "id": "ListReportsResponse", - "description": "Response message for ReportingService.ListReports.", - "type": "object" - }, - "Media": { - "description": "Media resource.", - "type": "object", - "properties": { - "resourceName": { - "description": "Name of the media resource.", + "name": { + "description": "The name of the job (max. 100 characters).", "type": "string" } }, - "id": "Media" + "id": "Job" } }, + "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://youtubereporting.googleapis.com/", "canonicalName": "YouTube Reporting", @@ -591,7 +591,7 @@ "name": "youtubereporting", "batchPath": "batch", "id": "youtubereporting:v1", - "revision": "20170715", + "revision": "20170718", "documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/", "title": "YouTube Reporting API" } 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 6a885ee232..38ab128d39 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.27.1 +// C# generator version: 1.28.0 // // 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 33c7ff0821..697589673f 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 f574af6abb..576b0b4b6d 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.27.1 +// C# generator version: 1.28.0 // // 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 cf4a77901f..4ab99bf0de 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 fb82963ee0..b2c827b3c1 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.27.1 +// C# generator version: 1.28.0 // // 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 b9c472ba46..dea13f5a04 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 f2adeef2fd..2e5ea96b2d 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.27.1 +// C# generator version: 1.28.0 // // 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 1ed0e66a62..f38b704ec6 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 0e59d81db9..409c4fd1ad 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.27.1 +// C# generator version: 1.28.0 // // 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 Rev20170714 (925) + * API Rev20170717 (928) * API Docs * * https://developers.google.com/ad-exchange/buyer-rest/guides/client-access/ @@ -1198,17 +1198,17 @@ public ListRequest(Google.Apis.Services.IClientService service, long accountId) [Google.Apis.Util.RequestParameterAttribute("accountId", Google.Apis.Util.RequestParameterType.Path)] public virtual long AccountId { get; private set; } - /// Requested page size. The server may return fewer clients than requested. If unspecified, - /// the server will pick an appropriate 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 the server should return. Typically, this is the /// value of ListClientsResponse.nextPageToken returned from the previous call to the /// accounts.clients.list 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 clients than requested. If unspecified, + /// the server will pick an appropriate 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 @@ -1243,18 +1243,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, @@ -1515,17 +1515,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; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Requested page size. Server may return fewer associations than requested. If - /// unspecified, server will pick an appropriate default. - [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: /// @@ -1537,6 +1526,17 @@ 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 ListDealAssociationsResponse.next_page_token returned from the previous call to + /// 'ListDealAssociations' method. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Requested page size. Server may return fewer associations than requested. If + /// unspecified, server will pick an appropriate 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 @@ -1580,27 +1580,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "query", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "query", 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( - "query", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "query", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2888,17 +2888,17 @@ public ListRequest(Google.Apis.Services.IClientService service, long accountId, [Google.Apis.Util.RequestParameterAttribute("creativeStatusId", Google.Apis.Util.RequestParameterType.Path)] public virtual int CreativeStatusId { get; private set; } - /// Requested page size. The server may return fewer results than requested. If - /// unspecified, the server will pick an appropriate 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 the server should return. Typically, this is /// the value of ListCreativeStatusBreakdownByCreativeResponse.nextPageToken returned from the /// previous call to the accounts.filterSets.filteredBids.creatives.list 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 results than requested. If + /// unspecified, the server will pick an appropriate 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 @@ -2951,18 +2951,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, @@ -3039,17 +3039,17 @@ public ListRequest(Google.Apis.Services.IClientService service, long accountId, [Google.Apis.Util.RequestParameterAttribute("creativeStatusId", Google.Apis.Util.RequestParameterType.Path)] public virtual int CreativeStatusId { get; private set; } - /// Requested page size. The server may return fewer results than requested. If - /// unspecified, the server will pick an appropriate 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 the server should return. Typically, this is /// the value of ListCreativeStatusBreakdownByDetailResponse.nextPageToken returned from the /// previous call to the accounts.filterSets.filteredBids.details.list 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 results than requested. If + /// unspecified, the server will pick an appropriate 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 @@ -3102,18 +3102,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.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj b/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj index 09d51dec2c..8d9e0b6497 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.27.1.925 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ef87495e75..5d771c0536 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.27.1 +// C# generator version: 1.28.0 // // 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 04077e7b9c..63e24efb35 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.27.1.582 + 1.28.0.582 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 2001ca8553..4cc4c35254 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.27.1 +// C# generator version: 1.28.0 // // 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 6a256f01d6..104310c8ed 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.27.1.582 + 1.28.0.582 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 497b82f70c..7993c13135 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.27.1 +// C# generator version: 1.28.0 // // 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 81acd4984a..5da5c96814 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.27.1.582 + 1.28.0.582 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6189c1979d..34f3d4bbe0 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.27.1 +// C# generator version: 1.28.0 // // 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 089d92883d..a0110d49d9 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.27.1.909 + 1.28.0.909 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.cs b/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.cs index bfdc4bca60..42cf5beaee 100644 --- a/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.cs +++ b/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // 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.3 - * API Rev20170716 (927) + * API Rev20170717 (928) * API Docs * * https://developers.google.com/adsense/management/ diff --git a/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.csproj b/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.csproj index f3b85b7306..98febf4a44 100644 --- a/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.csproj +++ b/Src/Generated/Google.Apis.AdSense.v1_3/Google.Apis.AdSense.v1_3.csproj @@ -3,7 +3,7 @@ Google.Apis.AdSense.v1_3 Client Library - 1.27.1.927 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7f9d93db9c..62c87d9860 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.27.1 +// C# generator version: 1.28.0 // // 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 Rev20170716 (927) + * API Rev20170717 (928) * 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 a1c048e648..869cd7013f 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.27.1.927 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 d92e0d0e81..b059b93943 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.27.1 +// C# generator version: 1.28.0 // // 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 Rev20170716 (927) + * API Rev20170717 (928) * 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 516f79f7f0..42f3499658 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.27.1.927 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 d45c63168d..0fedc88464 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.27.1.418 + 1.28.0.418 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 a86efd829b..3973bf9893 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.27.1.880 + 1.28.0.880 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 41dc81a468..97d82812b8 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.27.1.903 + 1.28.0.903 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 b2d7ade79f..cddcd36f03 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.27.1 +// C# generator version: 1.28.0 // // 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 c10119b8e0..c3f9a51c42 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.27.1.810 + 1.28.0.810 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 554649f8be..ade9a1a60b 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.27.1 +// C# generator version: 1.28.0 // // 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 af85cc784b..94a28e1815 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.27.1.810 + 1.28.0.810 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 4fe67f8e6c..2fd85b6776 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.27.1 +// C# generator version: 1.28.0 // // 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 790e01f1c9..0f9e54e53b 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.27.1.916 + 1.28.0.916 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 60c9f24779..131659df65 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Play EMM API * API Versionv1 - * API Rev20170706 (917) + * API Rev20170713 (924) * API Docs * * https://developers.google.com/android/work/play/emm-api @@ -1225,6 +1225,66 @@ protected override void InitParameters() } + /// Returns the Android Device Policy config resource. + /// The ID of the enterprise. + public virtual GetAndroidDevicePolicyConfigRequest GetAndroidDevicePolicyConfig(string enterpriseId) + { + return new GetAndroidDevicePolicyConfigRequest(service, enterpriseId); + } + + /// Returns the Android Device Policy config resource. + public class GetAndroidDevicePolicyConfigRequest : AndroidEnterpriseBaseServiceRequest + { + /// Constructs a new GetAndroidDevicePolicyConfig request. + public GetAndroidDevicePolicyConfigRequest(Google.Apis.Services.IClientService service, string enterpriseId) + : base(service) + { + EnterpriseId = enterpriseId; + InitParameters(); + } + + + /// The ID of the enterprise. + [Google.Apis.Util.RequestParameterAttribute("enterpriseId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EnterpriseId { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "getAndroidDevicePolicyConfig"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "GET"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "enterprises/{enterpriseId}/androidDevicePolicyConfig"; } + } + + /// Initializes GetAndroidDevicePolicyConfig parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "enterpriseId", new Google.Apis.Discovery.Parameter + { + Name = "enterpriseId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + /// Returns a service account and credentials. The service account can be bound to the enterprise by /// calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the /// enterprise is unbound. The credentials contain private key data and are not stored server-side. @@ -1750,6 +1810,76 @@ protected override void InitParameters() } + /// Sets the Android Device Policy config resource. EMM may use this API to enable or disable Android + /// Device Policy support for the specified enterprise. + /// The body of the request. + /// The ID of the enterprise. + public virtual SetAndroidDevicePolicyConfigRequest SetAndroidDevicePolicyConfig(Google.Apis.AndroidEnterprise.v1.Data.AndroidDevicePolicyConfig body, string enterpriseId) + { + return new SetAndroidDevicePolicyConfigRequest(service, body, enterpriseId); + } + + /// Sets the Android Device Policy config resource. EMM may use this API to enable or disable Android + /// Device Policy support for the specified enterprise. + public class SetAndroidDevicePolicyConfigRequest : AndroidEnterpriseBaseServiceRequest + { + /// Constructs a new SetAndroidDevicePolicyConfig request. + public SetAndroidDevicePolicyConfigRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidEnterprise.v1.Data.AndroidDevicePolicyConfig body, string enterpriseId) + : base(service) + { + EnterpriseId = enterpriseId; + Body = body; + InitParameters(); + } + + + /// The ID of the enterprise. + [Google.Apis.Util.RequestParameterAttribute("enterpriseId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EnterpriseId { get; private set; } + + + /// Gets or sets the body of this request. + Google.Apis.AndroidEnterprise.v1.Data.AndroidDevicePolicyConfig 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 "setAndroidDevicePolicyConfig"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "PUT"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "enterprises/{enterpriseId}/androidDevicePolicyConfig"; } + } + + /// Initializes SetAndroidDevicePolicyConfig parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "enterpriseId", new Google.Apis.Discovery.Parameter + { + Name = "enterpriseId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + /// Sets the store layout for the enterprise. By default, storeLayoutType is set to "basic" and the /// basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been /// added to the available product set for a user (using the setAvailableProductSet call). Apps on the page are @@ -7242,6 +7372,24 @@ public class AdministratorWebTokenSpec : Google.Apis.Requests.IDirectResponseSch public virtual string ETag { get; set; } } + /// The Android Device Policy configuration of an enterprise. + public class AndroidDevicePolicyConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// Identifies what kind of resource this is. Value: the fixed string + /// "androidenterprise#androidDevicePolicyConfig". + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// The state of Android Device Policy. "enabled" indicates that Android Device Policy is enabled for + /// the enterprise and the EMM is allowed to manage devices with Android Device Policy, while "disabled" means + /// that it cannot. + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Represents the list of app restrictions available to be pre-configured for the product. public class AppRestrictionsSchema : Google.Apis.Requests.IDirectResponseSchema { 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 8258468596..83bc39a83c 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.27.1.917 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 eee733c09e..2113c30b3f 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 2160286e3c..8c9d095ec1 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 39b48b8d1e..dbd996e6a3 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 c1bcbeb994..c11be8a5a6 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 b1ba59684d..7d07edc654 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 74abeebdc3..4201d0d266 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.27.1.854 + 1.28.0.854 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ce967dcf0b..ec160b28c9 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.27.1 +// C# generator version: 1.28.0 // // 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 6fed140801..7f32519db6 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 8cee9147e2..7a6d7f17c5 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google App Engine Admin API * API Versionv1 - * API Rev20170626 (907) + * API Rev20170630 (911) * API Docs * * https://cloud.google.com/appengine/docs/admin-api/ @@ -487,10 +487,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; } @@ -499,6 +495,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 @@ -533,27 +533,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, @@ -1232,14 +1232,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; } - /// 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 @@ -1292,18 +1292,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, @@ -1642,6 +1642,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId, s [Google.Apis.Util.RequestParameterAttribute("servicesId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ServicesId { 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; } @@ -1659,10 +1663,6 @@ public enum ViewEnum FULL, } - /// 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 @@ -1706,27 +1706,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, 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 37ed48ccfa..194ca1e167 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.27.1.907 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 093cbce76e..08145461da 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google App Engine Admin API * API Versionv1alpha - * API Rev20170626 (907) + * API Rev20170630 (911) * API Docs * * https://cloud.google.com/appengine/docs/admin-api/ @@ -667,6 +667,19 @@ 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; } + /// Controls the set of fields returned in the LIST response. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// Controls the set of fields returned in the LIST response. + public enum ViewEnum + { + [Google.Apis.Util.StringValueAttribute("BASIC_CERTIFICATE")] + BASICCERTIFICATE, + [Google.Apis.Util.StringValueAttribute("FULL_CERTIFICATE")] + FULLCERTIFICATE, + } + ///Gets the method name. public override string MethodName @@ -718,6 +731,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1534,6 +1556,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; } @@ -1542,10 +1568,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 @@ -1580,27 +1602,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, @@ -1842,8 +1864,8 @@ public class AuthorizedCertificate : Google.Apis.Requests.IDirectResponseSchema public virtual string DisplayName { get; set; } /// 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 requests - /// when specifically requested by the view=FULL option.@OutputOnly + /// 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 [Newtonsoft.Json.JsonPropertyAttribute("domainMappingsCount")] public virtual System.Nullable DomainMappingsCount { get; set; } @@ -1877,8 +1899,8 @@ public class AuthorizedCertificate : Google.Apis.Requests.IDirectResponseSchema /// 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 requests when specifically requested by the - /// view=FULL option.@OutputOnly + /// domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested + /// by the view=FULL_CERTIFICATE option.@OutputOnly [Newtonsoft.Json.JsonPropertyAttribute("visibleDomainMappings")] public virtual System.Collections.Generic.IList VisibleDomainMappings { get; set; } 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 68d82c38c3..563954d8fb 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.27.1.907 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6aa3112e49..41dc49d049 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google App Engine Admin API * API Versionv1beta - * API Rev20170626 (907) + * API Rev20170630 (911) * API Docs * * https://cloud.google.com/appengine/docs/admin-api/ @@ -669,6 +669,19 @@ 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; } + /// Controls the set of fields returned in the LIST response. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// Controls the set of fields returned in the LIST response. + public enum ViewEnum + { + [Google.Apis.Util.StringValueAttribute("BASIC_CERTIFICATE")] + BASICCERTIFICATE, + [Google.Apis.Util.StringValueAttribute("FULL_CERTIFICATE")] + FULLCERTIFICATE, + } + ///Gets the method name. public override string MethodName @@ -720,6 +733,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1215,14 +1237,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 @@ -1257,18 +1279,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, @@ -2801,14 +2823,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 @@ -2861,18 +2883,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, @@ -3722,6 +3744,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 @@ -3736,10 +3762,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; } @@ -3789,18 +3811,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, @@ -4218,8 +4240,8 @@ public class AuthorizedCertificate : Google.Apis.Requests.IDirectResponseSchema public virtual string DisplayName { get; set; } /// 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 requests - /// when specifically requested by the view=FULL option.@OutputOnly + /// 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 [Newtonsoft.Json.JsonPropertyAttribute("domainMappingsCount")] public virtual System.Nullable DomainMappingsCount { get; set; } @@ -4247,8 +4269,8 @@ public class AuthorizedCertificate : Google.Apis.Requests.IDirectResponseSchema /// 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 requests when specifically requested by the - /// view=FULL option.@OutputOnly + /// domain_mappings_count for a complete count.Only returned by GET or LIST requests when specifically requested + /// by the view=FULL_CERTIFICATE option.@OutputOnly [Newtonsoft.Json.JsonPropertyAttribute("visibleDomainMappings")] public virtual System.Collections.Generic.IList VisibleDomainMappings { get; set; } 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 48ce995cb5..417e7831e6 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.27.1.907 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ea657a09e2..7a1d9e80a2 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google App Engine Admin API * API Versionv1beta4 - * API Rev20170626 (907) + * API Rev20170630 (911) * API Docs * * https://cloud.google.com/appengine/docs/admin-api/ @@ -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 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; } @@ -495,10 +499,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 @@ -533,27 +533,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, @@ -1844,14 +1844,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 @@ -1886,18 +1886,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, @@ -2164,6 +2164,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; } @@ -2172,10 +2176,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 @@ -2210,27 +2210,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, 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 41c6fc8310..ed07918567 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.27.1.907 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 1b72c33144..2dbcf7d7ff 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google App Engine Admin API * API Versionv1beta5 - * API Rev20170626 (907) + * API Rev20170630 (911) * API Docs * * https://cloud.google.com/appengine/docs/admin-api/ @@ -698,10 +698,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 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; } @@ -710,6 +706,10 @@ 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 @@ -744,27 +744,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 + "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, @@ -1641,10 +1641,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId, s [Google.Apis.Util.RequestParameterAttribute("servicesId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ServicesId { 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; } @@ -1662,6 +1658,10 @@ public enum ViewEnum FULL, } + /// 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 @@ -1705,27 +1705,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, @@ -2055,14 +2055,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 @@ -2097,18 +2097,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, @@ -2152,10 +2152,6 @@ 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("mask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object Mask { 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 @@ -2170,6 +2166,10 @@ 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("mask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object Mask { get; set; } + /// Gets or sets the body of this request. Google.Apis.Appengine.v1beta5.Data.Service Body { get; set; } @@ -2219,18 +2219,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "mask", new Google.Apis.Discovery.Parameter + "migrateTraffic", new Google.Apis.Discovery.Parameter { - Name = "mask", + Name = "migrateTraffic", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "migrateTraffic", new Google.Apis.Discovery.Parameter + "mask", new Google.Apis.Discovery.Parameter { - Name = "migrateTraffic", + Name = "mask", IsRequired = false, ParameterType = "query", DefaultValue = null, 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 ec0929ed0f..c00d60682f 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.27.1.907 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 0a02f4cb42..fee96083ad 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 d3fb3aac42..84dfd3964f 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.27.1.900 + 1.28.0.900 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 269e501eff..6681d1c616 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.27.1 +// C# generator version: 1.28.0 // // 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 Service API * API Versionv1 - * API Rev20170710 (921) + * API Rev20170717 (928) * API Docs * * https://cloud.google.com/bigquery/ @@ -1603,10 +1603,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 @@ -1618,6 +1614,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 @@ -1652,27 +1652,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, @@ -1714,6 +1714,10 @@ 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 gaia id of the authorizing /// user. In order to obtain authorization_code, please make a request to @@ -1729,10 +1733,6 @@ 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; } @@ -1773,18 +1773,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", }); RequestParameters.Add( - "authorizationCode", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "authorizationCode", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "authorizationCode", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "authorizationCode", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2829,10 +2829,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 gaia id of the authorizing user. In /// order to obtain authorization_code, please make a request to @@ -2848,6 +2844,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; } @@ -2888,18 +2888,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/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, 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 8bb1149284..af42cae974 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.27.1.921 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 bef3ae5229..7b63ab0280 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.27.1 +// C# generator version: 1.28.0 // // 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 adefd29f18..b7514b8686 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.27.1.920 + 1.28.0.920 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 80c9fec6e3..3974f64eab 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.27.1 +// C# generator version: 1.28.0 // // 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 fc5897e786..1f613cb0e1 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.27.1.111 + 1.28.0.111 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 5f966017be..ab9819a91b 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.27.1 +// C# generator version: 1.28.0 // // 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 1acf4e8533..3851cbec9c 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.27.1.111 + 1.28.0.111 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 9ed0b43acc..1a0902d76b 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.27.1 +// C# generator version: 1.28.0 // // 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 f291f15868..b74728fc83 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.27.1.802 + 1.28.0.802 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 bf345a736c..b1c9753802 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 f3224608fa..c7ca4d29ae 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.27.1.894 + 1.28.0.894 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 c5581a3852..5b3803a7fe 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.27.1 +// C# generator version: 1.28.0 // // 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 ff1dd3ffac..6376cfb083 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.27.1.671 + 1.28.0.671 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 e56bdf6545..f772e863bf 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.27.1 +// C# generator version: 1.28.0 // // 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 Rev20170712 (923) + * API Rev20170717 (928) * API Docs * * https://developers.google.com/classroom/ @@ -930,14 +930,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId, [Google.Apis.Util.RequestParameterAttribute("courseWorkId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CourseWorkId { get; private 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: - /// - /// * the numeric identifier for the user * the email address of the user * the string literal - /// `"me"`, indicating the requesting user - [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string UserId { get; set; } - /// Requested lateness value. If specified, returned student submissions are restricted by /// the requested value. If unspecified, submissions are returned regardless of `late` /// value. @@ -994,6 +986,14 @@ public enum StatesEnum RECLAIMEDBYSTUDENT, } + /// 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: + /// + /// * the numeric identifier for the user * the email address of the user * the string literal + /// `"me"`, indicating the requesting user + [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UserId { get; set; } + ///Gets the method name. public override string MethodName @@ -1036,15 +1036,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "userId", new Google.Apis.Discovery.Parameter - { - Name = "userId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "late", new Google.Apis.Discovery.Parameter { @@ -1081,6 +1072,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "userId", new Google.Apis.Discovery.Parameter + { + Name = "userId", + 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 280b0adb35..42726ef82e 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.27.1.923 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 32bfeb6912..c6e1be9626 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Cloud Container Builder API * API Versionv1 - * API Rev20170713 (924) + * API Rev20170718 (929) * API Docs * * https://cloud.google.com/container-builder/docs/ @@ -927,6 +927,10 @@ 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; } @@ -935,10 +939,6 @@ 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( - "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.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj b/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj index 9b4da8a1b2..152df991a0 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.27.1.924 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 7d003f95fd..4bcf203bcd 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 63e954a9b0..d347e918b9 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.27.1 +// C# generator version: 1.28.0 // // 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.v1/Google.Apis.CloudFunctions.v1.csproj b/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.csproj index 28adfcc6f7..bda84a5572 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.27.1.925 + 1.28.0.925 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + 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 bb79b13cfb..c682300545 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -458,6 +458,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 standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -470,10 +474,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 @@ -499,36 +499,36 @@ protected override void InitParameters() base.InitParameters(); 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( - "name", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "pageToken", 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 + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, 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 c0c9413b37..1134219394 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.27.1.925 + 1.28.0.925 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 d529721cf4..d13775296d 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -694,11 +694,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 pagination token, returned earlier via - /// ListCryptoKeyVersionsResponse.next_page_token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional limit on the number of CryptoKeyVersions to include in the response. /// Further CryptoKeyVersions can subsequently be obtained by including the /// ListCryptoKeyVersionsResponse.next_page_token in a subsequent request. If unspecified, @@ -706,6 +701,11 @@ 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 pagination token, returned earlier via + /// ListCryptoKeyVersionsResponse.next_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 @@ -740,18 +740,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", }); 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, @@ -1305,6 +1305,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 pagination token, returned earlier via + /// ListCryptoKeysResponse.next_page_token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Optional limit on the number of CryptoKeys to include in the response. Further /// CryptoKeys can subsequently be obtained by including the /// ListCryptoKeysResponse.next_page_token in a subsequent request. If unspecified, the server @@ -1312,11 +1317,6 @@ 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 pagination token, returned earlier via - /// ListCryptoKeysResponse.next_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 @@ -1351,18 +1351,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", }); 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, @@ -1907,17 +1907,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; } + /// Optional pagination token, returned earlier via + /// ListKeyRingsResponse.next_page_token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Optional limit on the number of KeyRings to include in the response. Further KeyRings /// can subsequently be obtained by including the ListKeyRingsResponse.next_page_token in a /// subsequent request. If unspecified, the server will pick an appropriate default. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// Optional pagination token, returned earlier via - /// ListKeyRingsResponse.next_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 @@ -1952,18 +1952,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); 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.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj b/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj index 602432d3cc..343b46a208 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.27.1.902 + 1.28.0.902 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a10677abdb..42673d3d22 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -601,14 +601,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 number of jobs to retrieve per "page" of results. If there are more remaining - /// results than this number, the response message will contain a valid value in the `next_page_token` - /// field. - /// - /// The default value is 20, and the maximum page size is 100. - [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. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } @@ -619,6 +611,14 @@ 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 number of jobs to retrieve per "page" of results. If there are more remaining + /// results than this number, the response message will contain a valid value in the `next_page_token` + /// field. + /// + /// The default value is 20, and the maximum page size is 100. + [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 @@ -653,27 +653,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); 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, 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 43384d5a6d..fbb548241f 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.27.1.918 + 1.28.0.918 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.cs b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.cs index ac1731eba5..82d8f93112 100644 --- a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -601,6 +601,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; } + /// Optional. Specifies the subset of jobs to retrieve. + [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. @@ -615,10 +619,6 @@ 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. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -653,27 +653,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, @@ -1916,10 +1916,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; } @@ -1928,6 +1924,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 @@ -1962,27 +1962,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); 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, diff --git a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.csproj b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.csproj index f9b13d3537..c79c31b044 100644 --- a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1beta1/Google.Apis.CloudMachineLearningEngine.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudMachineLearningEngine.v1beta1 Client Library - 1.27.1.918 + 1.28.0.918 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.cs b/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.cs index e604217a95..34813e4096 100644 --- a/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.cs +++ b/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.csproj b/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.csproj index 7ebc57ff59..82490fcfd1 100644 --- a/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.csproj +++ b/Src/Generated/Google.Apis.CloudMonitoring.v2beta2/Google.Apis.CloudMonitoring.v2beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudMonitoring.v2beta2 Client Library - 1.27.1.851 + 1.28.0.851 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7ac42d5456..e5c2419379 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.27.1 +// C# generator version: 1.28.0 // // 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.v1/Google.Apis.CloudNaturalLanguage.v1.csproj b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.csproj index 11ecacf74b..b1ed24a80e 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.27.1.900 + 1.28.0.900 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 bc4865fbc9..767a007cdb 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.27.1 +// C# generator version: 1.28.0 // // 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 270dabeb72..1b3e1de7bb 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.27.1.900 + 1.28.0.900 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 fe29e6257f..e1780b4db4 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.27.1 +// C# generator version: 1.28.0 // // 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 222866dec8..96cb612271 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.27.1.900 + 1.28.0.900 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 32022b2378..522d8717f5 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.27.1 +// C# generator version: 1.28.0 // // 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 2329cb9e29..86e01172e2 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.27.1.900 + 1.28.0.900 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 26c10b875f..024490d87e 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.27.1.923 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 f4fda89ab2..eb8bb880ca 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.27.1.923 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 95ef952195..3488521736 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Cloud Resource Manager API * API Versionv2beta1 - * API Rev20170712 (923) + * API Rev20170717 (928) * API Docs * * https://cloud.google.com/resource-manager 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 ca5968f37f..6a5620b3f2 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.27.1.923 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 1887297c28..6ec6b890fd 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -538,6 +538,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; } @@ -546,10 +550,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 @@ -584,27 +584,27 @@ protected override void InitParameters() Pattern = @"^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.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj index da520f907e..f7b111c4f0 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.27.1.901 + 1.28.0.901 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e979f13699..e2eec1dbe0 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1475,16 +1475,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; } - /// 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. [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 @@ -1519,18 +1519,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/configs/[^/]+$", }); 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, @@ -1927,16 +1927,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; } - /// Specifies the number of results to return per page. If there are fewer elements than the - /// specified number, returns all elements. - [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; } + /// Specifies the number of results to return per page. If there are fewer elements than the + /// specified number, returns all elements. + [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,18 +1971,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.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj index b079e049af..010d46f2b6 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.27.1.901 + 1.28.0.901 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6290300af6..7cb6d96501 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.27.1 +// C# generator version: 1.28.0 // // 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 97447701de..9d213fe1e9 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.27.1.878 + 1.28.0.878 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 4aa62f9b63..0150a82f07 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 b577dd65c9..8f946d5baa 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -587,12 +587,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 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, even if fewer than the maximum number of results is returned by this request. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Optional. A single field used to sort the returned traces. Only the following field names /// can be used: /// @@ -626,6 +620,12 @@ 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 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, even if fewer than the maximum number of results is returned by this request. + [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 @@ -659,15 +659,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+$", }); - RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "orderBy", new Google.Apis.Discovery.Parameter { @@ -713,6 +704,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } 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 ec65e7ceb4..e851908f0a 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.cs b/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.cs index 4bd4b8bc71..89fb7f0d73 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.cs +++ b/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.csproj b/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.csproj index aac5c6252a..d567d1f836 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.csproj +++ b/Src/Generated/Google.Apis.CloudUserAccounts.alpha/Google.Apis.CloudUserAccounts.alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudUserAccounts.alpha Client Library - 1.27.1.440 + 1.28.0.440 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.cs b/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.cs index c1b70e93c4..ff32b8586e 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.cs +++ b/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.csproj b/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.csproj index 841fe8a1ed..4b04709864 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.csproj +++ b/Src/Generated/Google.Apis.CloudUserAccounts.beta/Google.Apis.CloudUserAccounts.beta.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudUserAccounts.beta Client Library - 1.27.1.440 + 1.28.0.440 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.cs b/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.cs index 825276f34e..aa0993ad64 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.cs +++ b/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.csproj b/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.csproj index ee41c2b162..35b1da82a9 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.csproj +++ b/Src/Generated/Google.Apis.CloudUserAccounts.vm_alpha/Google.Apis.CloudUserAccounts.vm_alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudUserAccounts.vm_alpha Client Library - 1.27.1.440 + 1.28.0.440 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.cs b/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.cs index dbe53b64be..41c7290773 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.cs +++ b/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.csproj b/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.csproj index 993f99ac3c..29e403ad6f 100644 --- a/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.csproj +++ b/Src/Generated/Google.Apis.CloudUserAccounts.vm_beta/Google.Apis.CloudUserAccounts.vm_beta.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudUserAccounts.vm_beta Client Library - 1.27.1.440 + 1.28.0.440 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 1ef721934c..7fc71c7a1b 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.27.1 +// C# generator version: 1.28.0 // // 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 448a0fdffc..e2f9f620cc 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 2b2ddc42e1..daf6626bd9 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 92932ca121..ec9dc585a9 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 86e813923a..e812ec69df 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -961,11 +961,6 @@ 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 @@ -1001,6 +996,11 @@ public enum ActionValueEnum [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; } + ///Gets the method name. public override string MethodName @@ -1034,15 +1034,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "stripResults", new Google.Apis.Discovery.Parameter - { - Name = "stripResults", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "waitToken", new Google.Apis.Discovery.Parameter { @@ -1088,6 +1079,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "stripResults", new Google.Apis.Discovery.Parameter + { + Name = "stripResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1192,6 +1192,11 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// When set to `true`, the result includes all debuggees. Otherwise, the result includes only + /// debuggees that are active. + [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; } @@ -1201,11 +1206,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] public virtual string ClientVersion { get; set; } - /// When set to `true`, the result includes all debuggees. Otherwise, the result includes only - /// debuggees that are active. - [Google.Apis.Util.RequestParameterAttribute("includeInactive", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeInactive { get; set; } - ///Gets the method name. public override string MethodName @@ -1231,27 +1231,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "project", new Google.Apis.Discovery.Parameter + "includeInactive", new Google.Apis.Discovery.Parameter { - Name = "project", + Name = "includeInactive", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); 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, 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 6bdfa71e29..c4a7aff516 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -409,6 +409,11 @@ 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.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 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)] @@ -439,24 +444,19 @@ public enum TimeRangePeriodEnum [Google.Apis.Util.RequestParameterAttribute("groupId", Google.Apis.Util.RequestParameterType.Query)] public virtual string GroupId { get; set; } - /// [Optional] A `next_page_token` provided by a previous response. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { 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] A `next_page_token` provided by a previous response. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// [Optional] The maximum number of results to return per response. [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; } - ///Gets the method name. public override string MethodName @@ -491,36 +491,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "serviceFilter.resourceType", new Google.Apis.Discovery.Parameter + "serviceFilter.version", new Google.Apis.Discovery.Parameter { - Name = "serviceFilter.resourceType", + Name = "serviceFilter.version", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "timeRange.period", new Google.Apis.Discovery.Parameter + "serviceFilter.resourceType", new Google.Apis.Discovery.Parameter { - Name = "timeRange.period", + Name = "serviceFilter.resourceType", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "groupId", new Google.Apis.Discovery.Parameter + "timeRange.period", new Google.Apis.Discovery.Parameter { - Name = "groupId", + Name = "timeRange.period", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "groupId", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "groupId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -536,18 +536,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( - "serviceFilter.version", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "serviceFilter.version", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -692,6 +692,11 @@ 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 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)] + public virtual object TimedCountDuration { get; set; } + /// [Optional] A `next_page_token` provided by a previous response. To view additional results, /// pass this token along with the identical query parameters as the first request. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] @@ -784,11 +789,6 @@ public enum OrderEnum [Google.Apis.Util.RequestParameterAttribute("alignmentTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object AlignmentTime { 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)] - public virtual object TimedCountDuration { get; set; } - ///Gets the method name. public override string MethodName @@ -822,6 +822,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+$", }); + RequestParameters.Add( + "timedCountDuration", new Google.Apis.Discovery.Parameter + { + Name = "timedCountDuration", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "pageToken", new Google.Apis.Discovery.Parameter { @@ -912,15 +921,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "timedCountDuration", new Google.Apis.Discovery.Parameter - { - Name = "timedCountDuration", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = 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 51e3ac3358..bae85c2987 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.27.1.918 + 1.28.0.918 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 de003f615a..94a1b36f28 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Cloud Resource Manager API * API Versionv1 - * API Rev20170712 (923) + * API Rev20170717 (928) * API Docs * * https://cloud.google.com/resource-manager 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 f898986009..517cc730df 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Cloud Resource Manager API * API Versionv1beta1 - * API Rev20170712 (923) + * API Rev20170717 (928) * API Docs * * https://cloud.google.com/resource-manager @@ -1252,6 +1252,20 @@ 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. + /// + /// Optional. + [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: /// @@ -1276,20 +1290,6 @@ 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; } - - /// 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. - /// - /// 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 @@ -1315,27 +1315,27 @@ protected override void InitParameters() base.InitParameters(); 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.Cloudtrace.v1/Google.Apis.Cloudtrace.v1.cs b/Src/Generated/Google.Apis.Cloudtrace.v1/Google.Apis.Cloudtrace.v1.cs index bc9a1ee2da..e344664382 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -524,16 +524,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object EndTime { get; set; } - /// Start of the time interval (inclusive) during which the trace data was collected from the - /// application. - [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object StartTime { get; set; } - /// Token identifying the page of results to return. If provided, use the value of the /// `next_page_token` field from a previous request. Optional. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Start of the time interval (inclusive) during which the trace data was collected from the + /// application. + [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object StartTime { get; set; } + /// Maximum number of traces to return. If not specified or <= 0, the implementation selects a /// reasonable value. The implementation may return fewer traces than the requested page size. /// Optional. @@ -618,18 +618,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "startTime", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "startTime", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "startTime", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, 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 1acdb6b89f..b36afa09bf 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.27.1 +// C# generator version: 1.28.0 // // 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 3755183eae..27a0326aed 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 1ea6da508b..9bad17d0f9 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.27.1 +// C# generator version: 1.28.0 // // 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 d9627115d6..bbf35a55a2 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ca5163da4a..ca78287b25 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.27.1 +// C# generator version: 1.28.0 // // 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 e8cda217ac..71106e985c 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ConsumerSurveys.v2/Google.Apis.ConsumerSurveys.v2.csproj b/Src/Generated/Google.Apis.ConsumerSurveys.v2/Google.Apis.ConsumerSurveys.v2.csproj index 143ff6e7e6..b1963e1638 100644 --- a/Src/Generated/Google.Apis.ConsumerSurveys.v2/Google.Apis.ConsumerSurveys.v2.csproj +++ b/Src/Generated/Google.Apis.ConsumerSurveys.v2/Google.Apis.ConsumerSurveys.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.ConsumerSurveys.v2 Client Library - 1.27.1.827 + 1.28.0.827 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Consumersurveys.v2/Google.Apis.Consumersurveys.v2.cs b/Src/Generated/Google.Apis.Consumersurveys.v2/Google.Apis.Consumersurveys.v2.cs index ba6e5e6744..dbedd0abdb 100644 --- a/Src/Generated/Google.Apis.Consumersurveys.v2/Google.Apis.Consumersurveys.v2.cs +++ b/Src/Generated/Google.Apis.Consumersurveys.v2/Google.Apis.Consumersurveys.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 a25f5fd72f..e7aefc3548 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 960e39abd9..7d6467ec28 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.27.1.908 + 1.28.0.908 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 75fe0d7a41..5baa91a5df 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.27.1 +// C# generator version: 1.28.0 // // 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 27768bdbb5..3e2381d0eb 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.27.1.896 + 1.28.0.896 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + diff --git a/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.cs b/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.cs index 0db9b6ca61..d2230b4288 100644 --- a/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.cs +++ b/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -794,10 +794,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; } - /// This parameter supports filtering by done, ie done=true or done=false. - [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; } @@ -806,6 +802,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; } + /// This parameter supports filtering by done, ie done=true or done=false. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -840,27 +840,27 @@ protected override void InitParameters() Pattern = @"^inspect/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.DLP.v2beta1/Google.Apis.DLP.v2beta1.csproj b/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.csproj index 6e65ae6f47..36005a01bb 100644 --- a/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.csproj +++ b/Src/Generated/Google.Apis.DLP.v2beta1/Google.Apis.DLP.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.DLP.v2beta1 Client Library - 1.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 de98c9abed..f8ddbb9ee8 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Dataflow API * API Versionv1b3 - * API Rev20170712 (923) + * API Rev20170713 (924) * API Docs * * https://cloud.google.com/dataflow @@ -1126,10 +1126,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; } @@ -1147,6 +1143,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 @@ -1190,18 +1190,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, @@ -3393,10 +3393,6 @@ 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; } @@ -3413,6 +3409,10 @@ 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 @@ -3447,27 +3447,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( - "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 + "location", new Google.Apis.Discovery.Parameter { - Name = "gcsPath", + Name = "location", 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 32c89c37f8..dd363a1fbf 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.27.1.923 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 cf5b5a16f5..fb72dc69e6 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -813,14 +813,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. @@ -833,6 +825,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 @@ -876,27 +876,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, @@ -1375,10 +1375,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 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)] @@ -1415,6 +1411,10 @@ public enum JobStateMatcherEnum [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 @@ -1457,15 +1457,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "clusterName", new Google.Apis.Discovery.Parameter { @@ -1502,6 +1493,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1966,10 +1966,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; } @@ -1978,6 +1974,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 @@ -2012,27 +2012,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/regions/[^/]+/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, 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 b5768de162..f94b9df335 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.cs b/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.cs index cbbeea3361..3b7336456f 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.cs +++ b/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -592,10 +592,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; } @@ -604,6 +600,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 @@ -638,27 +638,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, @@ -1510,10 +1510,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; } - /// 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)] @@ -1544,6 +1540,10 @@ public enum JobStateMatcherEnum [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 @@ -1577,15 +1577,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "clusterName", new Google.Apis.Discovery.Parameter { @@ -1622,6 +1613,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } diff --git a/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.csproj b/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.csproj index 58a4a25256..b1a7103e31 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Dataproc.v1beta1/Google.Apis.Dataproc.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dataproc.v1beta1 Client Library - 1.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6f15492b53..b230195d61 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -813,6 +813,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 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; } @@ -829,10 +833,6 @@ 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; } - ///Gets the method name. public override string MethodName @@ -876,27 +876,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, @@ -1375,15 +1375,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 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)] @@ -1415,6 +1406,15 @@ 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 @@ -1458,45 +1458,45 @@ protected override void InitParameters() 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, 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, @@ -1966,6 +1966,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 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; } @@ -1974,10 +1978,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; } - ///Gets the method name. public override string MethodName @@ -2012,27 +2012,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/regions/[^/]+/operations$", }); 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.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj b/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj index d2b8564d61..8dad8b04ff 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a3ad11e98b..f9ad8ecb9c 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.27.1 +// C# generator version: 1.28.0 // // 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.v1/Google.Apis.Datastore.v1.csproj b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj index 12d4282ab0..bffba94c2c 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 5a9b814964..e86bd407cc 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.27.1 +// C# generator version: 1.28.0 // // 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 ce8fd05957..256f1bd446 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7d8a51f423..1a9af950d3 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.27.1 +// C# generator version: 1.28.0 // // 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 ff9d7cd068..7b75ce333d 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.27.1.896 + 1.28.0.896 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 abc23e3aa2..60cd697000 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.27.1 +// C# generator version: 1.28.0 // // 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 291d3d7df9..3de48ae240 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.27.1.896 + 1.28.0.896 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 df116141b6..4db401c6ca 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.27.1 +// C# generator version: 1.28.0 // // 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 23125fbc3a..c5f1861b9b 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.27.1.896 + 1.28.0.896 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.cs b/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.cs index 2afbb4242b..bc2438cadb 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.cs +++ b/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // 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_7/Google.Apis.Dfareporting.v2_7.csproj b/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.csproj index b8c3b82e60..423c4916ef 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.csproj +++ b/Src/Generated/Google.Apis.Dfareporting.v2_7/Google.Apis.Dfareporting.v2_7.csproj @@ -3,7 +3,7 @@ Google.Apis.Dfareporting.v2_7 Client Library - 1.27.1.848 + 1.28.0.848 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 af83b8fa02..ee03e9c981 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.27.1 +// C# generator version: 1.28.0 // // 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 e72295e5ac..87c07223fd 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.27.1.848 + 1.28.0.848 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 2a96624b22..a802170e41 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.27.1 +// C# generator version: 1.28.0 // // 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 2ea5497aa4..488b4ea13d 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.27.1.0 + 1.28.0.0 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 817433976c..8e3368b55f 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.27.1 +// C# generator version: 1.28.0 // // 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 da2a13015b..4f2f601c80 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.27.1.911 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 0e9273cb9c..9c778fa7fa 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.27.1 +// C# generator version: 1.28.0 // // 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 26e94d90d4..10957a5b66 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.27.1.911 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e1cde1256f..fa8a761d04 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.27.1 +// C# generator version: 1.28.0 // // 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 4aa195a62b..3202c101b0 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.27.1.916 + 1.28.0.916 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 193f9d6da9..79f05ad2c6 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.27.1 +// C# generator version: 1.28.0 // // 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 899bc7dda9..51d306b0df 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 393f23f60b..5951bd6f18 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 43f4a28b56..422793e193 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e48db6732d..22939f8d85 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 70a467b125..ebdc80e513 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 748f95ffc4..17a0e46921 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.27.1 +// C# generator version: 1.28.0 // // 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 4f55400368..95c105d38e 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 dd9124869f..e1e46ff52f 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -648,6 +648,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; } + /// Next page token for the next batch of `Release` instances. + [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 fewer than `page_size` results due to the size of the output. To traverse /// all of the releases, the caller should iterate until the `page_token` on the response is @@ -678,10 +682,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; } - /// Next page token for the next batch of `Release` instances. - [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 = @"^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( - "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, @@ -1123,15 +1123,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; } - /// `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 - /// the RFC 3339 date/time specifications. - /// - /// Example: `create_time > date("2017-01-01") AND name=UUID-*` - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// Next page token for loading the next batch of `Ruleset` instances. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1142,6 +1133,15 @@ 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; } + /// `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 + /// the RFC 3339 date/time specifications. + /// + /// Example: `create_time > date("2017-01-01") AND name=UUID-*` + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1176,27 +1176,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.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj b/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj index 335c9ad600..b2b8b86b81 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.27.1.873 + 1.28.0.873 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 baae2a09aa..c25deff83f 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.27.1 +// C# generator version: 1.28.0 // // 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 bd90eb3f49..d915423a15 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.27.1.697 + 1.28.0.697 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.cs b/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.cs index 0040895cca..4137105332 100644 --- a/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.cs +++ b/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.csproj b/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.csproj index 4177faf640..3f0edbef31 100644 --- a/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.csproj +++ b/Src/Generated/Google.Apis.FlightAvailability.v1/Google.Apis.FlightAvailability.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.FlightAvailability.v1 Client Library - 1.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + 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 3940837f47..7e2286b534 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.27.1 +// C# generator version: 1.28.0 // // 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 cfef41c7ae..6171edf293 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.27.1.833 + 1.28.0.833 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 cfbebb72f3..37c491c737 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.27.1 +// C# generator version: 1.28.0 // // 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 6e5bf746d7..a7f5eff231 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.27.1.833 + 1.28.0.833 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a653f7471a..016b0c6387 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.27.1 +// C# generator version: 1.28.0 // // 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 d810a1dfb5..097a5f1484 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 061d05ff9f..3d48e6e986 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.27.1 +// C# generator version: 1.28.0 // // 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 278058d6e0..0510b1ff0c 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ef7477b9ec..cfe7be5026 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.27.1 +// C# generator version: 1.28.0 // // 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 9b8eebe5ba..8abcbf9ec7 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 3ceea14b19..75a23ec96a 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Genomics API * API Versionv1 - * API Rev20170717 (928) + * API Rev20170718 (929) * API Docs * * https://cloud.google.com/genomics @@ -2476,6 +2476,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. The following filter fields are supported /// /// * projectId Required. Corresponds to OperationMetadata.projectId. * createTime The time this job was @@ -2491,15 +2500,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 @@ -2534,27 +2534,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, @@ -3412,6 +3412,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string reference [Google.Apis.Util.RequestParameterAttribute("referenceId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ReferenceId { get; private set; } + /// The start position (0-based) of this query. Defaults to 0. + [Google.Apis.Util.RequestParameterAttribute("start", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Start { get; set; } + /// The end position (0-based, exclusive) of this query. Defaults to the length of this /// reference. [Google.Apis.Util.RequestParameterAttribute("end", Google.Apis.Util.RequestParameterType.Query)] @@ -3428,10 +3432,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string reference [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The start position (0-based) of this query. Defaults to 0. - [Google.Apis.Util.RequestParameterAttribute("start", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Start { get; set; } - ///Gets the method name. public override string MethodName @@ -3466,36 +3466,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "end", new Google.Apis.Discovery.Parameter + "start", new Google.Apis.Discovery.Parameter { - Name = "end", + Name = "start", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "end", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "end", 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( - "start", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "start", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = 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 5561fb0a86..d58fb18fa2 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.27.1.928 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 032d91a120..16e9adc5dc 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Genomics API * API Versionv1alpha2 - * API Rev20170717 (928) + * API Rev20170718 (929) * API Docs * * https://cloud.google.com/genomics 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 685f07f3be..b74c946159 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.27.1.928 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7c40550a2e..b872508559 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.27.1 +// C# generator version: 1.28.0 // // 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 5375872a51..3761a8f2a4 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 886c6229f6..16c6cfa97c 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.27.1 +// C# generator version: 1.28.0 // // 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 af97194ea7..b461038708 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.27.1.888 + 1.28.0.888 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 f7285d8935..1384c1665b 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.27.1 +// C# generator version: 1.28.0 // // 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 23d8b5f661..e953028566 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.27.1.888 + 1.28.0.888 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 3b31f777b8..de7a93efeb 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Identity and Access Management (IAM) API * API Versionv1 - * API Rev20170707 (918) + * API Rev20170714 (925) * API Docs * * https://cloud.google.com/iam/ @@ -64,6 +64,8 @@ public IamService() : public IamService(Google.Apis.Services.BaseClientService.Initializer initializer) : base(initializer) { + organizations = new OrganizationsResource(this); + permissions = new PermissionsResource(this); projects = new ProjectsResource(this); roles = new RolesResource(this); } @@ -116,6 +118,22 @@ public class Scope + private readonly OrganizationsResource organizations; + + /// Gets the Organizations resource. + public virtual OrganizationsResource Organizations + { + get { return organizations; } + } + + private readonly PermissionsResource permissions; + + /// Gets the Permissions resource. + public virtual PermissionsResource Permissions + { + get { return permissions; } + } + private readonly ProjectsResource projects; /// Gets the Projects resource. @@ -322,49 +340,1178 @@ protected override void InitParameters() RequestParameters.Add( "quotaUser", new Google.Apis.Discovery.Parameter { - Name = "quotaUser", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "uploadType", new Google.Apis.Discovery.Parameter + Name = "quotaUser", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "uploadType", new Google.Apis.Discovery.Parameter + { + Name = "uploadType", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "upload_protocol", new Google.Apis.Discovery.Parameter + { + Name = "upload_protocol", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// The "organizations" collection of methods. + public class OrganizationsResource + { + private const string Resource = "organizations"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public OrganizationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + roles = new RolesResource(service); + + } + + private readonly RolesResource roles; + + /// Gets the Roles resource. + public virtual RolesResource Roles + { + get { return roles; } + } + + /// The "roles" collection of methods. + public class RolesResource + { + private const string Resource = "roles"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public RolesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + + } + + + /// Creates a new Role. + /// The body of the request. + /// The resource name of the parent resource in one of the following formats: + /// `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + public virtual CreateRequest Create(Google.Apis.Iam.v1.Data.CreateRoleRequest body, string parent) + { + return new CreateRequest(service, body, parent); + } + + /// Creates a new Role. + public class CreateRequest : IamBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.CreateRoleRequest body, string parent) + : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + + /// The resource name of the parent resource in one of the following formats: + /// `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.CreateRoleRequest 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 "create"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+parent}/roles"; } + } + + /// Initializes Create 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 = @"^organizations/[^/]+$", + }); + } + + } + + /// Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy + /// Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the + /// `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are + /// inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings + /// associated with the role are removed. + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(service, name); + } + + /// Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy + /// Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the + /// `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are + /// inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings + /// associated with the role are removed. + public class DeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) + : base(service) + { + Name = name; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Used to perform a consistent read-modify-write. + [Google.Apis.Util.RequestParameterAttribute("etag", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Etag { get; set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "delete"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "DELETE"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}"; } + } + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^organizations/[^/]+/roles/[^/]+$", + }); + RequestParameters.Add( + "etag", new Google.Apis.Discovery.Parameter + { + Name = "etag", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Gets a Role definition. + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual GetRequest Get(string name) + { + return new GetRequest(service, name); + } + + /// Gets a Role definition. + public class GetRequest : IamBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) + : base(service) + { + Name = name; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { 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 "v1/{+name}"; } + } + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^organizations/[^/]+/roles/[^/]+$", + }); + } + + } + + /// Lists the Roles defined on a resource. + /// The resource name of the parent resource in one of the following formats: `` (empty string) -- + /// this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + public virtual ListRequest List(string parent) + { + return new ListRequest(service, parent); + } + + /// Lists the Roles defined on a resource. + public class ListRequest : IamBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) + : base(service) + { + Parent = parent; + InitParameters(); + } + + + /// The resource name of the parent resource in one of the following formats: `` (empty string) + /// -- this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Optional view for the returned Role objects. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// Optional view for the returned Role objects. + public enum ViewEnum + { + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC, + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL, + } + + /// 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; } + + /// Optional limit on the number of roles to include in the 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 + { + get { return "list"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "GET"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+parent}/roles"; } + } + + /// 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 = @"^organizations/[^/]+$", + }); + RequestParameters.Add( + "view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "showDeleted", new Google.Apis.Discovery.Parameter + { + Name = "showDeleted", + IsRequired = false, + ParameterType = "query", + 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 + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Updates a Role definition. + /// The body of the request. + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual PatchRequest Patch(Google.Apis.Iam.v1.Data.Role body, string name) + { + return new PatchRequest(service, body, name); + } + + /// Updates a Role definition. + public class PatchRequest : IamBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.Role body, string name) + : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// A mask describing which fields in the Role have changed. + [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.Iam.v1.Data.Role 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 "patch"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "PATCH"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}"; } + } + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^organizations/[^/]+/roles/[^/]+$", + }); + RequestParameters.Add( + "updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Undelete a Role, bringing it back in its previous state. + /// The body of the request. + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual UndeleteRequest Undelete(Google.Apis.Iam.v1.Data.UndeleteRoleRequest body, string name) + { + return new UndeleteRequest(service, body, name); + } + + /// Undelete a Role, bringing it back in its previous state. + public class UndeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Undelete request. + public UndeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.UndeleteRoleRequest body, string name) + : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.UndeleteRoleRequest 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 "undelete"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}:undelete"; } + } + + /// Initializes Undelete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^organizations/[^/]+/roles/[^/]+$", + }); + } + + } + } + } + + /// The "permissions" collection of methods. + public class PermissionsResource + { + private const string Resource = "permissions"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public PermissionsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + + } + + + /// Lists the permissions testable on a resource. A permission is testable if it can be tested for an + /// identity on a resource. + /// The body of the request. + public virtual QueryTestablePermissionsRequest QueryTestablePermissions(Google.Apis.Iam.v1.Data.QueryTestablePermissionsRequest body) + { + return new QueryTestablePermissionsRequest(service, body); + } + + /// Lists the permissions testable on a resource. A permission is testable if it can be tested for an + /// identity on a resource. + public class QueryTestablePermissionsRequest : IamBaseServiceRequest + { + /// Constructs a new QueryTestablePermissions request. + public QueryTestablePermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.QueryTestablePermissionsRequest body) + : base(service) + { + Body = body; + InitParameters(); + } + + + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.QueryTestablePermissionsRequest 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 "queryTestablePermissions"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/permissions:queryTestablePermissions"; } + } + + /// Initializes QueryTestablePermissions parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + } + + } + } + + /// The "projects" collection of methods. + public class ProjectsResource + { + private const string Resource = "projects"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ProjectsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + roles = new RolesResource(service); + serviceAccounts = new ServiceAccountsResource(service); + + } + + private readonly RolesResource roles; + + /// Gets the Roles resource. + public virtual RolesResource Roles + { + get { return roles; } + } + + /// The "roles" collection of methods. + public class RolesResource + { + private const string Resource = "roles"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public RolesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + + } + + + /// Creates a new Role. + /// The body of the request. + /// The resource name of the parent resource in one of the following formats: + /// `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + public virtual CreateRequest Create(Google.Apis.Iam.v1.Data.CreateRoleRequest body, string parent) + { + return new CreateRequest(service, body, parent); + } + + /// Creates a new Role. + public class CreateRequest : IamBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.CreateRoleRequest body, string parent) + : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + + /// The resource name of the parent resource in one of the following formats: + /// `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.CreateRoleRequest 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 "create"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+parent}/roles"; } + } + + /// Initializes Create 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/[^/]+$", + }); + } + + } + + /// Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy + /// Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the + /// `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are + /// inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings + /// associated with the role are removed. + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(service, name); + } + + /// Soft deletes a role. The role is suspended and cannot be used to create new IAM Policy + /// Bindings. The Role will not be included in `ListRoles()` unless `show_deleted` is set in the + /// `ListRolesRequest`. The Role contains the deleted boolean set. Existing Bindings remains, but are + /// inactive. The Role can be undeleted within 7 days. After 7 days the Role is deleted and all Bindings + /// associated with the role are removed. + public class DeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) + : base(service) + { + Name = name; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Used to perform a consistent read-modify-write. + [Google.Apis.Util.RequestParameterAttribute("etag", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Etag { get; set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "delete"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "DELETE"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}"; } + } + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/roles/[^/]+$", + }); + RequestParameters.Add( + "etag", new Google.Apis.Discovery.Parameter + { + Name = "etag", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Gets a Role definition. + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual GetRequest Get(string name) + { + return new GetRequest(service, name); + } + + /// Gets a Role definition. + public class GetRequest : IamBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) + : base(service) + { + Name = name; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { 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 "v1/{+name}"; } + } + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/roles/[^/]+$", + }); + } + + } + + /// Lists the Roles defined on a resource. + /// The resource name of the parent resource in one of the following formats: `` (empty string) -- + /// this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + public virtual ListRequest List(string parent) + { + return new ListRequest(service, parent); + } + + /// Lists the Roles defined on a resource. + public class ListRequest : IamBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) + : base(service) + { + Parent = parent; + InitParameters(); + } + + + /// The resource name of the parent resource in one of the following formats: `` (empty string) + /// -- this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + [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; } + + /// Optional limit on the number of roles to include in the response. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// Optional view for the returned Role objects. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// Optional view for the returned Role objects. + public enum ViewEnum + { + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC, + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL, + } + + + ///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 "v1/{+parent}/roles"; } + } + + /// 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/[^/]+$", + }); + RequestParameters.Add( + "showDeleted", new Google.Apis.Discovery.Parameter + { + Name = "showDeleted", + IsRequired = false, + ParameterType = "query", + 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 + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Updates a Role definition. + /// The body of the request. + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual PatchRequest Patch(Google.Apis.Iam.v1.Data.Role body, string name) + { + return new PatchRequest(service, body, name); + } + + /// Updates a Role definition. + public class PatchRequest : IamBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.Role body, string name) + : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// A mask describing which fields in the Role have changed. + [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.Iam.v1.Data.Role 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 "patch"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "PATCH"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}"; } + } + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/roles/[^/]+$", + }); + RequestParameters.Add( + "updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + + /// Undelete a Role, bringing it back in its previous state. + /// The body of the request. + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual UndeleteRequest Undelete(Google.Apis.Iam.v1.Data.UndeleteRoleRequest body, string name) + { + return new UndeleteRequest(service, body, name); + } + + /// Undelete a Role, bringing it back in its previous state. + public class UndeleteRequest : IamBaseServiceRequest + { + /// Constructs a new Undelete request. + public UndeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Iam.v1.Data.UndeleteRoleRequest body, string name) + : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` + /// `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + + /// Gets or sets the body of this request. + Google.Apis.Iam.v1.Data.UndeleteRoleRequest Body { get; set; } + + ///Returns the body of the request. + protected override object GetBody() { return Body; } + + ///Gets the method name. + public override string MethodName { - Name = "uploadType", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "upload_protocol", new Google.Apis.Discovery.Parameter + get { return "undelete"; } + } + + ///Gets the HTTP method. + public override string HttpMethod { - Name = "upload_protocol", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } + get { return "POST"; } + } - /// The "projects" collection of methods. - public class ProjectsResource - { - private const string Resource = "projects"; + ///Gets the REST path. + public override string RestPath + { + get { return "v1/{+name}:undelete"; } + } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// Initializes Undelete parameter list. + protected override void InitParameters() + { + base.InitParameters(); - /// Constructs a new resource. - public ProjectsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - serviceAccounts = new ServiceAccountsResource(service); + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/roles/[^/]+$", + }); + } + } } - private readonly ServiceAccountsResource serviceAccounts; /// Gets the ServiceAccounts resource. @@ -1497,6 +2644,188 @@ public RolesResource(Google.Apis.Services.IClientService service) } + /// Gets a Role definition. + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + public virtual GetRequest Get(string name) + { + return new GetRequest(service, name); + } + + /// Gets a Role definition. + public class GetRequest : IamBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) + : base(service) + { + Name = name; + InitParameters(); + } + + + /// The resource name of the role in one of the following formats: `roles/{ROLE_NAME}` + /// `organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}` `projects/{PROJECT_ID}/roles/{ROLE_NAME}` + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { 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 "v1/{+name}"; } + } + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^roles/[^/]+$", + }); + } + + } + + /// Lists the Roles defined on a resource. + public virtual ListRequest List() + { + return new ListRequest(service); + } + + /// Lists the Roles defined on a resource. + public class ListRequest : IamBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service) + : base(service) + { + InitParameters(); + } + + + /// 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; } + + /// Optional limit on the number of roles to include in the response. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// Optional view for the returned Role objects. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// Optional view for the returned Role objects. + public enum ViewEnum + { + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC, + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL, + } + + /// The resource name of the parent resource in one of the following formats: `` (empty string) -- + /// this refers to curated roles. `organizations/{ORGANIZATION_ID}` `projects/{PROJECT_ID}` + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Parent { 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 "v1/roles"; } + } + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "showDeleted", new Google.Apis.Discovery.Parameter + { + Name = "showDeleted", + IsRequired = false, + ParameterType = "query", + 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 + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + + } + /// Queries roles that can be granted on a particular resource. A role is grantable if it can be used /// as the role in a binding for a policy for that resource. /// The body of the request. @@ -1627,6 +2956,21 @@ public class BindingDelta : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// The request to create a new role. + public class CreateRoleRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The Role resource to create. + [Newtonsoft.Json.JsonPropertyAttribute("role")] + public virtual Role Role { get; set; } + + /// The role id to use for this role. + [Newtonsoft.Json.JsonPropertyAttribute("roleId")] + public virtual string RoleId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The service account key create request. public class CreateServiceAccountKeyRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -1677,6 +3021,21 @@ public class Empty : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// The response containing the roles defined under a resource. + public class ListRolesResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// To retrieve the next page of results, set `ListRolesRequest.page_token` to this value. + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The Roles defined on this resource. + [Newtonsoft.Json.JsonPropertyAttribute("roles")] + public virtual System.Collections.Generic.IList Roles { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The service account keys list response. public class ListServiceAccountKeysResponse : Google.Apis.Requests.IDirectResponseSchema { @@ -1704,6 +3063,37 @@ public class ListServiceAccountsResponse : Google.Apis.Requests.IDirectResponseS public virtual string ETag { get; set; } } + /// A permission which can be included by a role. + public class Permission : Google.Apis.Requests.IDirectResponseSchema + { + /// The current custom role support level. + [Newtonsoft.Json.JsonPropertyAttribute("customRolesSupportLevel")] + public virtual string CustomRolesSupportLevel { get; set; } + + /// A brief description of what this Permission is used for. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// The name of this Permission. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// This permission can ONLY be used in predefined roles. + [Newtonsoft.Json.JsonPropertyAttribute("onlyInPredefinedRoles")] + public virtual System.Nullable OnlyInPredefinedRoles { get; set; } + + /// The current launch stage of the permission. + [Newtonsoft.Json.JsonPropertyAttribute("stage")] + public virtual string Stage { get; set; } + + /// The title of this Permission. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies /// for Cloud Platform resources. /// @@ -1772,6 +3162,9 @@ public class QueryGrantableRolesRequest : Google.Apis.Requests.IDirectResponseSc [Newtonsoft.Json.JsonPropertyAttribute("pageToken")] public virtual string PageToken { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("view")] + public virtual string View { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -1792,13 +3185,64 @@ public class QueryGrantableRolesResponse : Google.Apis.Requests.IDirectResponseS public virtual string ETag { get; set; } } + /// A request to get permissions which can be tested on a resource. + public class QueryTestablePermissionsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The full resource name to query from the list of testable permissions. + /// + /// The name follows the Google Cloud Platform resource format. For example, a Cloud Platform project with id + /// `my-project` will be named `//cloudresourcemanager.googleapis.com/projects/my-project`. + [Newtonsoft.Json.JsonPropertyAttribute("fullResourceName")] + public virtual string FullResourceName { get; set; } + + /// Optional limit on the number of permissions to include in the response. + [Newtonsoft.Json.JsonPropertyAttribute("pageSize")] + public virtual System.Nullable PageSize { get; set; } + + /// Optional pagination token returned in an earlier QueryTestablePermissionsRequest. + [Newtonsoft.Json.JsonPropertyAttribute("pageToken")] + public virtual string PageToken { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response containing permissions which can be tested on a resource. + public class QueryTestablePermissionsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// To retrieve the next page of results, set `QueryTestableRolesRequest.page_token` to this + /// value. + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The Permissions testable on the requested resource. + [Newtonsoft.Json.JsonPropertyAttribute("permissions")] + public virtual System.Collections.Generic.IList Permissions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// A role in the Identity and Access Management API. public class Role : Google.Apis.Requests.IDirectResponseSchema { + /// The current deleted state of the role. This field is read only. It will be ignored in calls to + /// CreateRole and UpdateRole. + [Newtonsoft.Json.JsonPropertyAttribute("deleted")] + public virtual System.Nullable Deleted { get; set; } + /// Optional. A human-readable description for the role. [Newtonsoft.Json.JsonPropertyAttribute("description")] public virtual string Description { get; set; } + /// Used to perform a consistent read-modify-write. + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + + /// The names of the permissions this role grants when bound in an IAM policy. + [Newtonsoft.Json.JsonPropertyAttribute("includedPermissions")] + public virtual System.Collections.Generic.IList IncludedPermissions { get; set; } + /// The name of the role. /// /// When Role is used in CreateRole, the role name must not be set. @@ -1809,13 +3253,15 @@ public class Role : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } + /// The current launch stage of the role. + [Newtonsoft.Json.JsonPropertyAttribute("stage")] + public virtual string Stage { get; set; } + /// Optional. A human-readable title for the role. Typically this is limited to 100 UTF-8 /// bytes. [Newtonsoft.Json.JsonPropertyAttribute("title")] public virtual string Title { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } } /// A service account in the Identity and Access Management API. @@ -2013,5 +3459,14 @@ public class TestIamPermissionsResponse : Google.Apis.Requests.IDirectResponseSc /// The ETag of the item. public virtual string ETag { get; set; } + } + + /// The request to undelete an existing role. + public class UndeleteRoleRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Used to perform a consistent read-modify-write. + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + } } 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 b879641dfb..5a68aa9a23 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.27.1.918 + 1.28.0.925 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a4ec2f402e..5ff704a75e 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -369,16 +369,6 @@ public SearchRequest(Google.Apis.Services.IClientService service) } - /// Restricts returned entities with these types, e.g. Person (as defined in - /// http://schema.org/Person). If multiple types are specified, returned entities will contain one or more - /// of these types. - [Google.Apis.Util.RequestParameterAttribute("types", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable Types { get; set; } - - /// Enables indenting of json results. - [Google.Apis.Util.RequestParameterAttribute("indent", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Indent { get; set; } - /// The list of language codes (defined in ISO 693) to run the query with, e.g. 'en'. [Google.Apis.Util.RequestParameterAttribute("languages", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable Languages { get; set; } @@ -400,6 +390,16 @@ public SearchRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("query", Google.Apis.Util.RequestParameterType.Query)] public virtual string Query { get; set; } + /// Restricts returned entities with these types, e.g. Person (as defined in + /// http://schema.org/Person). If multiple types are specified, returned entities will contain one or more + /// of these types. + [Google.Apis.Util.RequestParameterAttribute("types", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable Types { get; set; } + + /// Enables indenting of json results. + [Google.Apis.Util.RequestParameterAttribute("indent", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Indent { get; set; } + ///Gets the method name. public override string MethodName @@ -425,63 +425,63 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "types", new Google.Apis.Discovery.Parameter + "languages", new Google.Apis.Discovery.Parameter { - Name = "types", + Name = "languages", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "indent", new Google.Apis.Discovery.Parameter + "ids", new Google.Apis.Discovery.Parameter { - Name = "indent", + Name = "ids", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languages", new Google.Apis.Discovery.Parameter + "limit", new Google.Apis.Discovery.Parameter { - Name = "languages", + Name = "limit", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "ids", new Google.Apis.Discovery.Parameter + "prefix", new Google.Apis.Discovery.Parameter { - Name = "ids", + Name = "prefix", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "limit", new Google.Apis.Discovery.Parameter + "query", new Google.Apis.Discovery.Parameter { - Name = "limit", + Name = "query", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "prefix", new Google.Apis.Discovery.Parameter + "types", new Google.Apis.Discovery.Parameter { - Name = "prefix", + Name = "types", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "query", new Google.Apis.Discovery.Parameter + "indent", new Google.Apis.Discovery.Parameter { - Name = "query", + Name = "indent", IsRequired = false, ParameterType = "query", DefaultValue = null, 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 dc605a8910..df5f4d58b1 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.27.1.739 + 1.28.0.739 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 70c07c1280..cedb57bfb9 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.27.1 +// C# generator version: 1.28.0 // // 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 a226a7838c..5d080175a1 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.27.1.774 + 1.28.0.774 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 5e2a4bba01..2f9b39e420 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -536,18 +536,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 @@ -582,18 +582,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, @@ -1664,18 +1664,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 @@ -1710,18 +1710,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, @@ -3448,18 +3448,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 @@ -3494,18 +3494,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 88deab7c81..175f4af2b9 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 b61ff677db..50390a9153 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -950,18 +950,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 @@ -996,18 +996,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, @@ -1159,18 +1159,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 @@ -1205,18 +1205,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, 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 41d42d9520..2275b3b808 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.27.1.921 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a435808b3a..41608068ec 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -609,14 +609,14 @@ 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 product statuses to return in the response, used for paging. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// The token returned by the previous request. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Maximum number of product statuses to return in the response, used for paging. + [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 @@ -651,18 +651,18 @@ protected override void InitParameters() Pattern = @"^accounts/[^/]+$", }); 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.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj b/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj index 55f0187c66..032d2fa846 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.27.1.914 + 1.28.0.914 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 81da7d903d..8abd4351a7 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.27.1 +// C# generator version: 1.28.0 // // 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 00475d253a..6ff10a6426 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.27.1.839 + 1.28.0.839 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 1b7ee0feca..5d5529e7b4 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -556,15 +556,15 @@ 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; } - /// 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 @@ -626,18 +626,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "interval.startTime", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "interval.startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "interval.startTime", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "interval.startTime", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -880,6 +880,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; } + /// 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. @@ -903,12 +909,6 @@ 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; } - ///Gets the method name. public override string MethodName @@ -942,6 +942,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+$", }); + RequestParameters.Add( + "childrenOfGroup", new Google.Apis.Discovery.Parameter + { + Name = "childrenOfGroup", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "descendantsOfGroup", new Google.Apis.Discovery.Parameter { @@ -978,15 +987,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "childrenOfGroup", new Google.Apis.Discovery.Parameter - { - Name = "childrenOfGroup", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } @@ -1329,13 +1329,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 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/") - /// - [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. @@ -1346,6 +1339,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; } + /// 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/") + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1380,27 +1380,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, @@ -1733,6 +1733,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; } @@ -1808,12 +1820,6 @@ public enum AggregationCrossSeriesReducerEnum [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. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// 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 @@ -1867,6 +1873,12 @@ public enum AggregationPerSeriesAlignerEnum ALIGNPERCENTILE05, } + /// 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. + [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)] @@ -1885,18 +1897,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 @@ -1930,6 +1930,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 { @@ -1985,18 +1994,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "aggregation.perSeriesAligner", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "aggregation.perSeriesAligner", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "aggregation.perSeriesAligner", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "aggregation.perSeriesAligner", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2020,15 +2029,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, - }); } } 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 a782830ba1..ca74890a57 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 c995e12faa..3c7a8bce35 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.27.1 +// C# generator version: 1.28.0 // // 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 5323d5ca0f..4cb1d0bea2 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.27.1.859 + 1.28.0.859 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 71c00a63ca..471880539b 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.27.1 +// C# generator version: 1.28.0 // // 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 621a955723..b091f63faf 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.27.1.703 + 1.28.0.703 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 3f11c6b755..ec208afa9a 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.27.1 +// C# generator version: 1.28.0 // // 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 372012fdee..fd22f69bd7 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.27.1.703 + 1.28.0.703 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 e446cc2a39..18d2b3cda1 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Partners API * API Versionv2 - * API Rev20170707 (918) + * API Rev20170713 (924) * API Docs * * https://developers.google.com/partners/ @@ -450,30 +450,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// 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; } - - /// Google Partners session ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataPartnersSessionId { get; set; } - - /// A token identifying a page of results that the server returns. Typically, this is the value of - /// `ListAnalyticsResponse.next_page_token` returned from the previous call to ListAnalytics. Will be a date - /// string in `YYYY-MM-DD` format representing the end date of the date range of results to return. If - /// unspecified or set to "", default value is the current date. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Requested page size. Server may return fewer analytics than requested. If unspecified or set to /// 0, default value is 30. Specifies the number of days in the date range when querying analytics. The /// `page_token` represents the end date of the date range and the start date is calculated using the @@ -494,6 +470,30 @@ 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; } + + /// 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 + /// `ListAnalyticsResponse.next_page_token` returned from the previous call to ListAnalytics. Will be a date + /// string in `YYYY-MM-DD` format representing the end date of the date range of results to return. If + /// unspecified or set to "", default value is the current date. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -519,81 +519,81 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + 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, 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( - "pageToken", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + 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 + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -808,35 +808,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string companyId) [Google.Apis.Util.RequestParameterAttribute("companyId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CompanyId { 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; } - - /// 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; } - - /// 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; } - - /// 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 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; } - /// 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; } @@ -860,14 +831,43 @@ 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 for sorting the company's addresses by proximity. If not given, the geo- /// located address of the request is used. Used when order_by is set. [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; } + /// 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; } + + /// 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; } + + /// 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; } + + /// 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 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; } ///Gets the method name. @@ -903,99 +903,99 @@ protected override void InitParameters() 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.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( - "currencyCode", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "currencyCode", + Name = "view", 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 + "address", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "address", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "currencyCode", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "address", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "address", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1022,53 +1022,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("specializations", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Specializations { 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. - public enum SpecializationsEnum - { - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_UNKNOWN")] - BADGESPECIALIZATIONUNKNOWN, - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_SEARCH")] - BADGESPECIALIZATIONADWORDSSEARCH, - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_DISPLAY")] - BADGESPECIALIZATIONADWORDSDISPLAY, - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_MOBILE")] - BADGESPECIALIZATIONADWORDSMOBILE, - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_VIDEO")] - BADGESPECIALIZATIONADWORDSVIDEO, - [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_SHOPPING")] - BADGESPECIALIZATIONADWORDSSHOPPING, - } - - /// The 3-letter currency code defined in ISO 4217. - [Google.Apis.Util.RequestParameterAttribute("maxMonthlyBudget.currencyCode", Google.Apis.Util.RequestParameterType.Query)] - public virtual string MaxMonthlyBudgetCurrencyCode { get; set; } - - /// The 3-letter currency code defined in ISO 4217. - [Google.Apis.Util.RequestParameterAttribute("minMonthlyBudget.currencyCode", Google.Apis.Util.RequestParameterType.Query)] - public virtual string MinMonthlyBudgetCurrencyCode { 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 the `Company` resource to be returned. This must not be /// `COMPANY_VIEW_UNSPECIFIED`. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] @@ -1084,15 +1037,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)] @@ -1158,15 +1111,15 @@ public enum ServicesEnum [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; } - /// Company name to search for. - [Google.Apis.Util.RequestParameterAttribute("companyName", Google.Apis.Util.RequestParameterType.Query)] - public virtual string CompanyName { 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; } @@ -1233,6 +1186,53 @@ public enum GpsMotivationsEnum [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. + [Google.Apis.Util.RequestParameterAttribute("specializations", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Specializations { 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. + public enum SpecializationsEnum + { + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_UNKNOWN")] + BADGESPECIALIZATIONUNKNOWN, + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_SEARCH")] + BADGESPECIALIZATIONADWORDSSEARCH, + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_DISPLAY")] + BADGESPECIALIZATIONADWORDSDISPLAY, + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_MOBILE")] + BADGESPECIALIZATIONADWORDSMOBILE, + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_VIDEO")] + BADGESPECIALIZATIONADWORDSVIDEO, + [Google.Apis.Util.StringValueAttribute("BADGE_SPECIALIZATION_ADWORDS_SHOPPING")] + BADGESPECIALIZATIONADWORDSSHOPPING, + } + + /// The 3-letter currency code defined in ISO 4217. + [Google.Apis.Util.RequestParameterAttribute("maxMonthlyBudget.currencyCode", Google.Apis.Util.RequestParameterType.Query)] + public virtual string MaxMonthlyBudgetCurrencyCode { 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 3-letter currency code defined in ISO 4217. + [Google.Apis.Util.RequestParameterAttribute("minMonthlyBudget.currencyCode", Google.Apis.Util.RequestParameterType.Query)] + public virtual string MinMonthlyBudgetCurrencyCode { get; set; } + ///Gets the method name. public override string MethodName @@ -1258,225 +1258,225 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "specializations", new Google.Apis.Discovery.Parameter + "address", new Google.Apis.Discovery.Parameter { - Name = "specializations", + Name = "address", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.units", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.currencyCode", + Name = "minMonthlyBudget.units", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.currencyCode", + Name = "maxMonthlyBudget.nanos", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "services", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "services", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "address", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.units", new Google.Apis.Discovery.Parameter { - Name = "address", + Name = "maxMonthlyBudget.units", 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, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.units", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.units", + Name = "minMonthlyBudget.nanos", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.nanos", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "services", new Google.Apis.Discovery.Parameter + "companyName", new Google.Apis.Discovery.Parameter { - Name = "services", + Name = "companyName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.units", new Google.Apis.Discovery.Parameter + "industries", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.units", + Name = "industries", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "websiteUrl", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "websiteUrl", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter + "gpsMotivations", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.nanos", + Name = "gpsMotivations", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "languageCodes", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "languageCodes", 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( - "companyName", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "companyName", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "industries", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "industries", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "websiteUrl", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "websiteUrl", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gpsMotivations", new Google.Apis.Discovery.Parameter + "specializations", new Google.Apis.Discovery.Parameter { - Name = "gpsMotivations", + Name = "specializations", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languageCodes", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter { - Name = "languageCodes", + Name = "maxMonthlyBudget.currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "minMonthlyBudget.currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1553,6 +1553,15 @@ public enum ExamTypeEnum CETMOBILESITES, } + /// 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; } @@ -1574,15 +1583,6 @@ public enum ExamTypeEnum [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 @@ -1617,63 +1617,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.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 + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.partnersSessionId", 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, @@ -1719,24 +1719,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Requested page size. Server may return fewer leads 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; } - - /// 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; } - /// 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; } @@ -1751,19 +1733,37 @@ 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; } + /// 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)] public virtual string PageToken { get; set; } + /// Requested page size. Server may return fewer leads 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; } + + /// 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; } + ///Gets the method name. public override string MethodName @@ -1789,90 +1789,90 @@ protected override void InitParameters() base.InitParameters(); 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 + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "orderBy", 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, Pattern = null, }); 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( - "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( - "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( - "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.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, 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, @@ -1940,6 +1940,14 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// 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; } + /// Token to retrieve a specific page. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1961,14 +1969,14 @@ 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; } - /// if true, show history for the entire company. Requires user to be admin. [Google.Apis.Util.RequestParameterAttribute("entireCompany", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable EntireCompany { 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)] @@ -1980,14 +1988,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [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; } - ///Gets the method name. public override string MethodName @@ -2013,99 +2013,99 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "pageSize", 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( - "entireCompany", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "entireCompany", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "entireCompany", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "entireCompany", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + 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.userOverrides.userId", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2521,6 +2521,19 @@ public CreateCompanyRelationRequest(Google.Apis.Services.IClientService service, [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] public virtual string UserId { get; private 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; } + /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } @@ -2538,19 +2551,6 @@ public CreateCompanyRelationRequest(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; } - - /// 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 or sets the body of this request. Google.Apis.Partners.v2.Data.CompanyRelation Body { get; set; } @@ -2591,63 +2591,63 @@ protected override void InitParameters() 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 + "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.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, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); 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( - "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, @@ -2829,17 +2829,9 @@ public GetRequest(Google.Apis.Services.IClientService service, string userId) } - /// Identifier of the user. Can be set to me to mean the currently authenticated user. - [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string UserId { get; private 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 of the user. Can be set to me to mean the currently authenticated user. + [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string UserId { get; private set; } /// Specifies what parts of the user information to return. [Google.Apis.Util.RequestParameterAttribute("userView", Google.Apis.Util.RequestParameterType.Query)] @@ -2878,6 +2870,14 @@ public enum UserViewEnum [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; } + + /// Google Partners session ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataPartnersSessionId { get; set; } + ///Gets the method name. public override string MethodName @@ -2912,72 +2912,72 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "userView", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "userView", 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( - "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, 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, @@ -3008,14 +3008,27 @@ public UpdateProfileRequest(Google.Apis.Services.IClientService service, Google. } - /// Google Partners session ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataPartnersSessionId { 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; } + /// 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)] @@ -3025,19 +3038,6 @@ public UpdateProfileRequest(Google.Apis.Services.IClientService service, Google. [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 or sets the body of this request. Google.Apis.Partners.v2.Data.UserProfile Body { get; set; } @@ -3069,63 +3069,63 @@ protected override void InitParameters() base.InitParameters(); 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 + "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.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, 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.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 + "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, @@ -3171,11 +3171,6 @@ 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; } - /// 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; } @@ -3201,6 +3196,11 @@ 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 @@ -3225,15 +3225,6 @@ 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.userOverrides.userId", new Google.Apis.Discovery.Parameter { @@ -3288,6 +3279,15 @@ 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, + }); } } @@ -3311,23 +3311,14 @@ public UpdateCompaniesRequest(Google.Apis.Services.IClientService service, Googl } - /// 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; } - /// 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)] @@ -3346,6 +3337,15 @@ public UpdateCompaniesRequest(Google.Apis.Services.IClientService service, Googl [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] public virtual object UpdateMask { 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 or sets the body of this request. Google.Apis.Partners.v2.Data.Company Body { get; set; } @@ -3377,72 +3377,72 @@ protected override void InitParameters() base.InitParameters(); 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.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( - "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 + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3471,28 +3471,14 @@ public UpdateLeadsRequest(Google.Apis.Services.IClientService service, Google.Ap } - /// Standard field mask for the set of fields to be updated. Required with at least 1 value in - /// FieldMask's paths. Only `state` and `adwords_customer_id` are currently supported. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { 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; } - /// 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)] @@ -3506,6 +3492,20 @@ public UpdateLeadsRequest(Google.Apis.Services.IClientService service, Google.Ap [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + /// Standard field mask for the set of fields to be updated. Required with at least 1 value in + /// FieldMask's paths. Only `state` and `adwords_customer_id` are currently supported. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { 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 or sets the body of this request. Google.Apis.Partners.v2.Data.Lead Body { get; set; } @@ -3537,72 +3537,72 @@ protected override void InitParameters() base.InitParameters(); 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.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.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + 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, 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.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "updateMask", 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, 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 36c5f4edca..bf5cd0ed5a 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.27.1.918 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 fcc34d594c..05ae5b8ba7 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google People API * API Versionv1 - * API Rev20170715 (926) + * API Rev20170718 (929) * 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, @@ -985,30 +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; } - /// Whether the response should include a sync token, which can be used to get all changes - /// since the last request. - [Google.Apis.Util.RequestParameterAttribute("requestSyncToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable RequestSyncToken { get; set; } - - /// The token of the page to be returned. - [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. - [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. Valid /// values are: /// @@ -1036,6 +1012,30 @@ public enum SortOrderEnum LASTNAMEASCENDING, } + /// Whether the response should include a sync token, which can be used to get all changes + /// since the last request. + [Google.Apis.Util.RequestParameterAttribute("requestSyncToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable RequestSyncToken { get; set; } + + /// The token of the page to be returned. + [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. + [Google.Apis.Util.RequestParameterAttribute("syncToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string SyncToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1070,63 +1070,63 @@ protected override void InitParameters() Pattern = @"^people/[^/]+$", }); RequestParameters.Add( - "requestSyncToken", new Google.Apis.Discovery.Parameter + "personFields", new Google.Apis.Discovery.Parameter { - Name = "requestSyncToken", + Name = "personFields", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "sortOrder", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + 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( - "requestMask.includeField", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMask.includeField", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "syncToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "syncToken", + Name = "pageSize", 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, Pattern = null, }); RequestParameters.Add( - "sortOrder", new Google.Apis.Discovery.Parameter + "syncToken", new Google.Apis.Discovery.Parameter { - Name = "sortOrder", + Name = "syncToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1301,11 +1301,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. Valid values /// are: /// @@ -1316,6 +1311,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 @@ -1350,18 +1350,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, 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 7b330b55c5..665933b4d8 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.27.1.926 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.cs b/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.cs index b5408a91cd..3d8669a980 100644 --- a/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.cs +++ b/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -493,14 +493,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("title", Google.Apis.Util.RequestParameterType.Query)] public virtual string Title { get; set; } - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Filter Avails that match any of the given `video_id`s. [Google.Apis.Util.RequestParameterAttribute("videoIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable VideoIds { get; set; } + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// See _List methods rules_ for info about this field. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -571,18 +571,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "videoIds", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "videoIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "videoIds", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "videoIds", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -781,6 +781,26 @@ 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; } + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Filter Orders that match a case-insensitive, partner-specific custom id. + [Google.Apis.Util.RequestParameterAttribute("customId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string CustomId { get; set; } + + /// Filter Orders that match any of the given `video_id`s. + [Google.Apis.Util.RequestParameterAttribute("videoIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable VideoIds { get; set; } + + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("pphNames", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable PphNames { get; set; } + /// Filter Orders that match one of the given status. [Google.Apis.Util.RequestParameterAttribute("status", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable Status { get; set; } @@ -811,26 +831,6 @@ public enum StatusEnum [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Query)] public virtual string Name { get; set; } - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Filter Orders that match a case-insensitive, partner-specific custom id. - [Google.Apis.Util.RequestParameterAttribute("customId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string CustomId { get; set; } - - /// Filter Orders that match any of the given `video_id`s. - [Google.Apis.Util.RequestParameterAttribute("videoIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable VideoIds { get; set; } - - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("pphNames", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable PphNames { get; set; } - ///Gets the method name. public override string MethodName @@ -865,72 +865,72 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "status", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "status", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "studioNames", new Google.Apis.Discovery.Parameter + "customId", new Google.Apis.Discovery.Parameter { - Name = "studioNames", + Name = "customId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "name", new Google.Apis.Discovery.Parameter + "videoIds", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "videoIds", 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( - "customId", new Google.Apis.Discovery.Parameter + "pphNames", new Google.Apis.Discovery.Parameter { - Name = "customId", + Name = "pphNames", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "videoIds", new Google.Apis.Discovery.Parameter + "status", new Google.Apis.Discovery.Parameter { - Name = "videoIds", + Name = "status", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "studioNames", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "studioNames", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pphNames", new Google.Apis.Discovery.Parameter + "name", new Google.Apis.Discovery.Parameter { - Name = "pphNames", + Name = "name", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1115,22 +1115,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; } - /// Filter StoreInfos that match any of the given `season_id`s. - [Google.Apis.Util.RequestParameterAttribute("seasonIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable SeasonIds { get; set; } - - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Filter StoreInfos that match any of the given `video_id`s. + [Google.Apis.Util.RequestParameterAttribute("videoIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable VideoIds { get; set; } /// Filter StoreInfos that match a given `video_id`. NOTE: this field is deprecated and will be /// removed on V2; `video_ids` should be used instead. [Google.Apis.Util.RequestParameterAttribute("videoId", Google.Apis.Util.RequestParameterType.Query)] public virtual string VideoId { get; set; } - /// Filter StoreInfos that match any of the given `video_id`s. - [Google.Apis.Util.RequestParameterAttribute("videoIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable VideoIds { get; set; } + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } /// See _List methods rules_ for info about this field. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] @@ -1149,15 +1145,19 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("countries", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable Countries { get; set; } - /// See _List methods rules_ for info about this field. - [Google.Apis.Util.RequestParameterAttribute("studioNames", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable StudioNames { get; set; } - /// Filter that matches StoreInfos with a `name` or `show_name` that contains the given case- /// insensitive name. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Query)] public virtual string Name { get; set; } + /// See _List methods rules_ for info about this field. + [Google.Apis.Util.RequestParameterAttribute("studioNames", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable StudioNames { get; set; } + + /// Filter StoreInfos that match any of the given `season_id`s. + [Google.Apis.Util.RequestParameterAttribute("seasonIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable SeasonIds { get; set; } + ///Gets the method name. public override string MethodName @@ -1192,18 +1192,9 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "seasonIds", new Google.Apis.Discovery.Parameter - { - Name = "seasonIds", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "videoIds", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "videoIds", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1219,9 +1210,9 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "videoIds", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "videoIds", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1263,6 +1254,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "studioNames", new Google.Apis.Discovery.Parameter { @@ -1273,9 +1273,9 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "name", new Google.Apis.Discovery.Parameter + "seasonIds", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "seasonIds", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.csproj b/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.csproj index 16125695e2..9c74561893 100644 --- a/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.csproj +++ b/Src/Generated/Google.Apis.PlayMovies.v1/Google.Apis.PlayMovies.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.PlayMovies.v1 Client Library - 1.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e8d7c97c00..d1fc01f823 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.27.1 +// C# generator version: 1.28.0 // // 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 6fd52b21f2..c5d6668400 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.27.1.903 + 1.28.0.903 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ef11e37719..e4491dc1b3 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 247ca4fe43..b6169c7167 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 8caadaf47b..92bd1b65da 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.27.1 +// C# generator version: 1.28.0 // // 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 e5f6f24ad4..95cc5d076a 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.cs b/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.cs index 3e28a15a48..e98c7ebf4c 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.cs +++ b/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.csproj b/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.csproj index 6e65d97290..149ec74023 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.csproj +++ b/Src/Generated/Google.Apis.Prediction.v1_2/Google.Apis.Prediction.v1_2.csproj @@ -3,7 +3,7 @@ Google.Apis.Prediction.v1_2 Client Library - 1.27.1.496 + 1.28.0.496 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.cs b/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.cs index cdd5980b64..3d1d661a11 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.cs +++ b/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.csproj b/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.csproj index efb6e78246..309fa2924a 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.csproj +++ b/Src/Generated/Google.Apis.Prediction.v1_3/Google.Apis.Prediction.v1_3.csproj @@ -3,7 +3,7 @@ Google.Apis.Prediction.v1_3 Client Library - 1.27.1.496 + 1.28.0.496 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.cs b/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.cs index 8ae1d434ca..00808fe617 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.cs +++ b/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.csproj b/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.csproj index 8feede635f..c8558f5507 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.csproj +++ b/Src/Generated/Google.Apis.Prediction.v1_4/Google.Apis.Prediction.v1_4.csproj @@ -3,7 +3,7 @@ Google.Apis.Prediction.v1_4 Client Library - 1.27.1.496 + 1.28.0.496 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.cs b/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.cs index afa8813b5e..13c7105d2b 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.cs +++ b/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.csproj b/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.csproj index 89f8354a0f..be0d65b7a3 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.csproj +++ b/Src/Generated/Google.Apis.Prediction.v1_5/Google.Apis.Prediction.v1_5.csproj @@ -3,7 +3,7 @@ Google.Apis.Prediction.v1_5 Client Library - 1.27.1.496 + 1.28.0.496 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.cs b/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.cs index 6e715ab9d3..f10c26acf9 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.cs +++ b/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.csproj b/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.csproj index d555703c2c..3f3ecec28d 100644 --- a/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.csproj +++ b/Src/Generated/Google.Apis.Prediction.v1_6/Google.Apis.Prediction.v1_6.csproj @@ -3,7 +3,7 @@ Google.Apis.Prediction.v1_6 Client Library - 1.27.1.496 + 1.28.0.496 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 70fea9f1cc..00992ed9a1 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.27.1 +// C# generator version: 1.28.0 // // 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, @@ -849,6 +849,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string beaconNam [Google.Apis.Util.RequestParameterAttribute("beaconName", Google.Apis.Util.RequestParameterType.Path)] public virtual string BeaconName { get; private set; } + /// Specifies the namespace and type of attachment to include in response in namespace/type + /// format. Accepts `*` to specify "all types in all namespaces". + [Google.Apis.Util.RequestParameterAttribute("namespacedType", Google.Apis.Util.RequestParameterType.Query)] + public virtual string NamespacedType { get; set; } + /// The project id to list 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 @@ -856,11 +861,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string beaconNam [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } - /// Specifies the namespace and type of attachment to include in response in namespace/type - /// format. Accepts `*` to specify "all types in all namespaces". - [Google.Apis.Util.RequestParameterAttribute("namespacedType", Google.Apis.Util.RequestParameterType.Query)] - public virtual string NamespacedType { get; set; } - ///Gets the method name. public override string MethodName @@ -895,18 +895,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, @@ -1575,6 +1575,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; } + /// The maximum number of records to return for this request, up to a server-defined upper /// limit. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] @@ -1627,10 +1631,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 @@ -1656,36 +1656,36 @@ 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( - "q", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "q", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "q", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "q", 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 655d581a42..0e063fb469 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.27.1.928 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 335a310e35..9e1221035c 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1525,16 +1525,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 subscription 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 `ListTopicSubscriptionsResponse`; indicates that this is /// a continuation of a prior `ListTopicSubscriptions` 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 subscription 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 @@ -1569,18 +1569,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/topics/[^/]+$", }); 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.Pubsub.v1/Google.Apis.Pubsub.v1.csproj b/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.csproj index a0ce0bb1c9..2351fac8fc 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.27.1.911 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 f0047c5908..4bcbf61cc3 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.27.1 +// C# generator version: 1.28.0 // // 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.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj b/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj index e1f05a3114..14ccaf7500 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.27.1.911 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 5a5ef2dd83..f9dda91c65 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.27.1 +// C# generator version: 1.28.0 // // 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 b1d562451a..73659b699b 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.27.1.911 + 1.28.0.911 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.cs b/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.cs index 9154706223..9e49eed70b 100644 --- a/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.cs +++ b/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.csproj b/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.csproj index 38c2d573a8..8e2384cdd0 100644 --- a/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.csproj +++ b/Src/Generated/Google.Apis.QPXExpress.v1/Google.Apis.QPXExpress.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.QPXExpress.v1 Client Library - 1.27.1.554 + 1.28.0.554 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + 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 d51955e04e..b2ae63add0 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.27.1 +// C# generator version: 1.28.0 // // 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 b5c1f54565..64acda0f55 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.27.1.497 + 1.28.0.497 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 8632c4fcd3..f9b9a14375 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.27.1 +// C# generator version: 1.28.0 // // 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 d59b32f094..526ae7fb47 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.27.1.497 + 1.28.0.497 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 3241404e00..c6944a1ef5 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.27.1 +// C# generator version: 1.28.0 // // 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 aa3d8d437e..ae34b4c1f1 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.27.1.641 + 1.28.0.641 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 26ec9bf93a..7485fa5ad5 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.27.1 +// C# generator version: 1.28.0 // // 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 f3a6044160..9c7107f083 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.27.1.789 + 1.28.0.789 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e4f9304279..4b326822a6 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.27.1 +// C# generator version: 1.28.0 // // 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 6df93f5307..c12126ed9e 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.27.1.497 + 1.28.0.497 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7d968a4e3e..22651ec259 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.27.1 +// C# generator version: 1.28.0 // // 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 0d5c14ef35..7f6745a501 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.27.1.497 + 1.28.0.497 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 8b7144c3f8..5861cede78 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.27.1 +// C# generator version: 1.28.0 // // 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 d22942dd04..d6a7627ab2 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.27.1.887 + 1.28.0.887 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 e47db59547..6607bba0d6 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.27.1 +// C# generator version: 1.28.0 // // 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 ddbab02e7c..0919f39ebc 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.27.1.887 + 1.28.0.887 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 a6640f0570..c9b9646305 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Safe Browsing API * API Versionv4 - * API Rev20170717 (928) + * API Rev20170710 (921) * API Docs * * https://developers.google.com/safe-browsing/ @@ -418,15 +418,15 @@ public GetRequest(Google.Apis.Services.IClientService service, string encodedReq [Google.Apis.Util.RequestParameterAttribute("encodedRequest", Google.Apis.Util.RequestParameterType.Path)] public virtual string EncodedRequest { get; private set; } - /// The version of the client implementation. - [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClientVersion { get; set; } - /// A client ID that (hopefully) uniquely identifies the client implementation of the Safe Browsing /// API. [Google.Apis.Util.RequestParameterAttribute("clientId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ClientId { get; set; } + /// The version of the client implementation. + [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClientVersion { get; set; } + ///Gets the method name. public override string MethodName @@ -461,18 +461,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "clientVersion", new Google.Apis.Discovery.Parameter + "clientId", new Google.Apis.Discovery.Parameter { - Name = "clientVersion", + Name = "clientId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clientId", new Google.Apis.Discovery.Parameter + "clientVersion", new Google.Apis.Discovery.Parameter { - Name = "clientId", + Name = "clientVersion", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -522,15 +522,15 @@ public GetRequest(Google.Apis.Services.IClientService service, string encodedReq [Google.Apis.Util.RequestParameterAttribute("encodedRequest", Google.Apis.Util.RequestParameterType.Path)] public virtual string EncodedRequest { get; private set; } - /// The version of the client implementation. - [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClientVersion { get; set; } - /// A client ID that uniquely identifies the client implementation of the Safe Browsing /// API. [Google.Apis.Util.RequestParameterAttribute("clientId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ClientId { get; set; } + /// The version of the client implementation. + [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClientVersion { get; set; } + ///Gets the method name. public override string MethodName @@ -565,18 +565,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "clientVersion", new Google.Apis.Discovery.Parameter + "clientId", new Google.Apis.Discovery.Parameter { - Name = "clientVersion", + Name = "clientId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clientId", new Google.Apis.Discovery.Parameter + "clientVersion", new Google.Apis.Discovery.Parameter { - Name = "clientId", + Name = "clientVersion", IsRequired = false, ParameterType = "query", DefaultValue = null, 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 3dc475edcd..f48a52d7c2 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.27.1.928 + 1.28.0.921 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 0195502f7e..be3ca52847 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Apps Script Execution API * API Versionv1 - * API Rev20170712 (923) + * API Rev20170714 (925) * API Docs * * https://developers.google.com/apps-script/execution/rest/v1/scripts/run 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 7b0bf8e2ae..94687ee012 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.27.1.923 + 1.28.0.925 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 9dad536b65..9c51aa3380 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Search Console URL Testing Tools API * API Versionv1 - * API Rev20170715 (926) + * API Rev20170718 (929) * API Docs * * https://developers.google.com/webmaster-tools/search-console-api/ 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 08b88c55a9..8b14fdb196 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.27.1.926 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + 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 e7645fda50..660b6f7dfa 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 d7d893c5d2..f5eb173999 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.27.1.923 + 1.28.0.923 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 c539a188fc..215b36654c 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1394,10 +1394,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string serviceNa [Google.Apis.Util.RequestParameterAttribute("serviceName", Google.Apis.Util.RequestParameterType.Path)] public virtual string ServiceName { get; private set; } - /// The max number of items to include in the response list. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Use `filter` to return subset of rollouts. The following filters are supported: -- To limit /// the results to only those in [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS', use /// filter='status=SUCCESS' -- To limit the results to those in @@ -1410,6 +1406,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string serviceNa [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The max number of items to include in the response list. + [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 @@ -1444,27 +1444,27 @@ protected override void InitParameters() 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, 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, @@ -2081,12 +2081,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Include services consumed by the specified consumer. - /// - /// The Google Service Management implementation accepts the following forms: - project: - [Google.Apis.Util.RequestParameterAttribute("consumerId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ConsumerId { get; set; } - /// Token identifying which result to start with; returned by a previous list call. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -2099,6 +2093,12 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("producerProjectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProducerProjectId { get; set; } + /// Include services consumed by the specified consumer. + /// + /// The Google Service Management implementation accepts the following forms: - project: + [Google.Apis.Util.RequestParameterAttribute("consumerId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ConsumerId { get; set; } + ///Gets the method name. public override string MethodName @@ -2124,36 +2124,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "consumerId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "consumerId", + 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 + "producerProjectId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "producerProjectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "producerProjectId", new Google.Apis.Discovery.Parameter + "consumerId", new Google.Apis.Discovery.Parameter { - Name = "producerProjectId", + Name = "consumerId", 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 1e2718b3f7..ec2e3e9cc7 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.27.1.918 + 1.28.0.918 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 158db329d4..5a8a9c0193 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -688,14 +688,14 @@ public SearchRequest(Google.Apis.Services.IClientService service) } - /// Token identifying which result to start with; returned by a previous list call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Requested size of the next page of data. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Token identifying which result to start with; returned by a previous list 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 @@ -721,18 +721,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.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj b/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj index f6851816e6..764b5c5158 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.27.1.918 + 1.28.0.918 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 58a9f6b40c..e06790df2d 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Sheets API * API Versionv4 - * API Rev20170707 (918) + * API Rev20170713 (924) * API Docs * * https://developers.google.com/sheets/ @@ -554,11 +554,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)] @@ -621,6 +616,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; } @@ -669,15 +669,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 { @@ -714,6 +705,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, + }); } } @@ -1303,6 +1303,30 @@ 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)] + public virtual System.Nullable ResponseValueRenderOption { get; set; } + + /// Determines how values in the response should be rendered. The default render option is + /// ValueRenderOption.FORMATTED_VALUE. + public enum ResponseValueRenderOptionEnum + { + [Google.Apis.Util.StringValueAttribute("FORMATTED_VALUE")] + FORMATTEDVALUE, + [Google.Apis.Util.StringValueAttribute("UNFORMATTED_VALUE")] + UNFORMATTEDVALUE, + [Google.Apis.Util.StringValueAttribute("FORMULA")] + FORMULA, + } + /// How the input data should be interpreted. [Google.Apis.Util.RequestParameterAttribute("valueInputOption", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable ValueInputOption { get; set; } @@ -1335,30 +1359,6 @@ 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; } - - /// 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)] - public virtual System.Nullable ResponseValueRenderOption { get; set; } - - /// Determines how values in the response should be rendered. The default render option is - /// ValueRenderOption.FORMATTED_VALUE. - public enum ResponseValueRenderOptionEnum - { - [Google.Apis.Util.StringValueAttribute("FORMATTED_VALUE")] - FORMATTEDVALUE, - [Google.Apis.Util.StringValueAttribute("UNFORMATTED_VALUE")] - UNFORMATTEDVALUE, - [Google.Apis.Util.StringValueAttribute("FORMULA")] - FORMULA, - } - /// Gets or sets the body of this request. Google.Apis.Sheets.v4.Data.ValueRange Body { get; set; } @@ -1408,36 +1408,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "valueInputOption", new Google.Apis.Discovery.Parameter + "includeValuesInResponse", new Google.Apis.Discovery.Parameter { - Name = "valueInputOption", + Name = "includeValuesInResponse", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "responseDateTimeRenderOption", new Google.Apis.Discovery.Parameter + "responseValueRenderOption", new Google.Apis.Discovery.Parameter { - Name = "responseDateTimeRenderOption", + Name = "responseValueRenderOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "includeValuesInResponse", new Google.Apis.Discovery.Parameter + "valueInputOption", new Google.Apis.Discovery.Parameter { - Name = "includeValuesInResponse", + Name = "valueInputOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "responseValueRenderOption", new Google.Apis.Discovery.Parameter + "responseDateTimeRenderOption", new Google.Apis.Discovery.Parameter { - Name = "responseValueRenderOption", + Name = "responseDateTimeRenderOption", 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 040c866668..fa95887604 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.27.1.918 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 fb67ecd0a2..33d19d0136 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.27.1 +// C# generator version: 1.28.0 // // 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 564061155e..8dd0c81fd5 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 48d6990112..5410b63f00 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.27.1 +// C# generator version: 1.28.0 // // 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 011486eacc..a19593fafe 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.27.1.922 + 1.28.0.922 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 f0d0a37e77..d7ff846944 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.27.1 +// C# generator version: 1.28.0 // // 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 2abd5e27cc..4f9eb75d96 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.27.1.683 + 1.28.0.683 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 95d53c9bbc..add0042a43 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Slides API * API Versionv1 - * API Rev20170713 (924) + * API Rev20170717 (928) * API Docs * * https://developers.google.com/slides/ 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 4f53ad3bdc..c28e64eed4 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.27.1.924 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 2c7faf7290..c2a7d8db87 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.27.1 +// C# generator version: 1.28.0 // // 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 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; } @@ -862,6 +858,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 @@ -896,27 +896,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/instances/[^/]+/databases/[^/]+/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, @@ -2067,16 +2067,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; } - /// Number of databases 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; } - /// If non-empty, `page_token` should contain a next_page_token from a previous /// ListDatabasesResponse. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Number of databases 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 @@ -2111,18 +2111,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/instances/[^/]+$", }); 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, @@ -3057,6 +3057,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; } + /// 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)] @@ -3077,11 +3082,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; } - ///Gets the method name. public override string MethodName @@ -3116,27 +3116,27 @@ 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( - "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.Spanner.v1/Google.Apis.Spanner.v1.csproj b/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.csproj index 24ee46b00e..02928755a5 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.27.1.912 + 1.28.0.912 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6944f487f4..1aa3719db1 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.27.1 +// C# generator version: 1.28.0 // // 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 71ebc4072f..03aab0c3e3 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.27.1.795 + 1.28.0.795 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 fa0d711145..7e75685638 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.27.1 +// C# generator version: 1.28.0 // // 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 3056258add..c4cc42d84a 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.27.1.916 + 1.28.0.916 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 0701c155ce..57d2324eaa 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.27.1 +// C# generator version: 1.28.0 // // 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 928cfef2c3..fdc4545f4d 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.27.1.916 + 1.28.0.916 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ad2d12eace..a6e862afbe 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.27.1 +// C# generator version: 1.28.0 // // 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 bf15fe27ea..0315f89c84 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.27.1.888 + 1.28.0.888 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 810246750b..14f404f8f3 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.27.1 +// C# generator version: 1.28.0 // // 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 f73215e6b0..e876c65d50 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.27.1.888 + 1.28.0.888 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 cdbae55356..1f406d50a8 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.27.1 +// C# generator version: 1.28.0 // // 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 954f216e05..c8b361bda0 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.27.1.888 + 1.28.0.888 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6ba3542510..a568d9a8a3 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Storage Transfer API * API Versionv1 - * API Rev20170707 (918) + * API Rev20170717 (928) * API Docs * * https://cloud.google.com/storage/transfer @@ -983,6 +983,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 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; } @@ -995,10 +999,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 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 @@ -1033,27 +1033,27 @@ protected override void InitParameters() Pattern = @"^transferOperations$", }); 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.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj b/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj index 6daace79b7..47bff34a12 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.27.1.918 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 deleted file mode 100644 index e3a211dbc7..0000000000 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.cs +++ /dev/null @@ -1,1516 +0,0 @@ -// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with -// the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on -// an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the -// specific language governing permissions and limitations under the License. - -//------------------------------------------------------------------------------ -// -// This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -/** - * \brief - * Street View Publish API Version v1 - * - * \section ApiInfo API Version Information - * - *
API - * Street View Publish API - *
API Versionv1 - *
API Rev20170712 (923) - *
API Docs - * - * https://developers.google.com/streetview/publish/ - *
Discovery Namestreetviewpublish - *
- * - * \section ForMoreInfo For More Information - * - * The complete API documentation for using Street View Publish API can be found at - * https://developers.google.com/streetview/publish/. - * - * For more information about the Google APIs Client Library for .NET, see - * - * https://developers.google.com/api-client-library/dotnet/get_started - */ - -namespace Google.Apis.StreetViewPublish.v1 -{ - /// The StreetViewPublish Service. - public class StreetViewPublishService : Google.Apis.Services.BaseClientService - { - /// The API version. - public const string Version = "v1"; - - /// The discovery version used to generate this service. - public static Google.Apis.Discovery.DiscoveryVersion DiscoveryVersionUsed = - Google.Apis.Discovery.DiscoveryVersion.Version_1_0; - - /// Constructs a new service. - public StreetViewPublishService() : - this(new Google.Apis.Services.BaseClientService.Initializer()) {} - - /// Constructs a new service. - /// The service initializer. - public StreetViewPublishService(Google.Apis.Services.BaseClientService.Initializer initializer) - : base(initializer) - { - photo = new PhotoResource(this); - photos = new PhotosResource(this); - } - - /// Gets the service supported features. - public override System.Collections.Generic.IList Features - { - get { return new string[0]; } - } - - /// Gets the service name. - public override string Name - { - get { return "streetviewpublish"; } - } - - /// Gets the service base URI. - public override string BaseUri - { - get { return "https://streetviewpublish.googleapis.com/"; } - } - - /// Gets the service base path. - public override string BasePath - { - get { return ""; } - } - - #if !NET40 - /// Gets the batch base URI; null if unspecified. - public override string BatchUri - { - get { return "https://streetviewpublish.googleapis.com/batch"; } - } - - /// Gets the batch base path; null if unspecified. - public override string BatchPath - { - get { return "batch"; } - } - #endif - - /// Available OAuth 2.0 scopes for use with the Street View Publish API. - public class Scope - { - /// Publish and manage your 360 photos on Google Street View - public static string Streetviewpublish = "https://www.googleapis.com/auth/streetviewpublish"; - - } - - - - private readonly PhotoResource photo; - - /// Gets the Photo resource. - public virtual PhotoResource Photo - { - get { return photo; } - } - - private readonly PhotosResource photos; - - /// Gets the Photos resource. - public virtual PhotosResource Photos - { - get { return photos; } - } - } - - ///A base abstract class for StreetViewPublish requests. - public abstract class StreetViewPublishBaseServiceRequest : Google.Apis.Requests.ClientServiceRequest - { - ///Constructs a new StreetViewPublishBaseServiceRequest instance. - protected StreetViewPublishBaseServiceRequest(Google.Apis.Services.IClientService service) - : base(service) - { - } - - /// V1 error format. - [Google.Apis.Util.RequestParameterAttribute("$.xgafv", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Xgafv { get; set; } - - /// V1 error format. - public enum XgafvEnum - { - /// v1 error format - [Google.Apis.Util.StringValueAttribute("1")] - Value1, - /// v2 error format - [Google.Apis.Util.StringValueAttribute("2")] - Value2, - } - - /// OAuth access token. - [Google.Apis.Util.RequestParameterAttribute("access_token", Google.Apis.Util.RequestParameterType.Query)] - public virtual string AccessToken { get; set; } - - /// Data format for response. - /// [default: json] - [Google.Apis.Util.RequestParameterAttribute("alt", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Alt { get; set; } - - /// Data format for response. - public enum AltEnum - { - /// Responses with Content-Type of application/json - [Google.Apis.Util.StringValueAttribute("json")] - Json, - /// Media download with context-dependent Content-Type - [Google.Apis.Util.StringValueAttribute("media")] - Media, - /// Responses with Content-Type of application/x-protobuf - [Google.Apis.Util.StringValueAttribute("proto")] - Proto, - } - - /// OAuth bearer token. - [Google.Apis.Util.RequestParameterAttribute("bearer_token", Google.Apis.Util.RequestParameterType.Query)] - public virtual string BearerToken { get; set; } - - /// JSONP - [Google.Apis.Util.RequestParameterAttribute("callback", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Callback { get; set; } - - /// 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; } - - /// Pretty-print response. - /// [default: true] - [Google.Apis.Util.RequestParameterAttribute("pp", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Pp { 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; } - - /// Available to use for quota purposes for server-side applications. Can be any arbitrary string - /// assigned to a user, but should not exceed 40 characters. - [Google.Apis.Util.RequestParameterAttribute("quotaUser", Google.Apis.Util.RequestParameterType.Query)] - public virtual string QuotaUser { get; set; } - - /// Legacy upload protocol for media (e.g. "media", "multipart"). - [Google.Apis.Util.RequestParameterAttribute("uploadType", Google.Apis.Util.RequestParameterType.Query)] - public virtual string UploadType { get; set; } - - /// Upload protocol for media (e.g. "raw", "multipart"). - [Google.Apis.Util.RequestParameterAttribute("upload_protocol", Google.Apis.Util.RequestParameterType.Query)] - public virtual string UploadProtocol { get; set; } - - /// Initializes StreetViewPublish parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "$.xgafv", new Google.Apis.Discovery.Parameter - { - Name = "$.xgafv", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "access_token", new Google.Apis.Discovery.Parameter - { - Name = "access_token", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "alt", new Google.Apis.Discovery.Parameter - { - Name = "alt", - IsRequired = false, - ParameterType = "query", - DefaultValue = "json", - Pattern = null, - }); - RequestParameters.Add( - "bearer_token", new Google.Apis.Discovery.Parameter - { - Name = "bearer_token", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "callback", new Google.Apis.Discovery.Parameter - { - Name = "callback", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "fields", new Google.Apis.Discovery.Parameter - { - Name = "fields", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "key", new Google.Apis.Discovery.Parameter - { - Name = "key", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "oauth_token", new Google.Apis.Discovery.Parameter - { - Name = "oauth_token", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "pp", new Google.Apis.Discovery.Parameter - { - Name = "pp", - IsRequired = false, - ParameterType = "query", - DefaultValue = "true", - Pattern = null, - }); - RequestParameters.Add( - "prettyPrint", new Google.Apis.Discovery.Parameter - { - Name = "prettyPrint", - IsRequired = false, - ParameterType = "query", - DefaultValue = "true", - Pattern = null, - }); - RequestParameters.Add( - "quotaUser", new Google.Apis.Discovery.Parameter - { - Name = "quotaUser", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "uploadType", new Google.Apis.Discovery.Parameter - { - Name = "uploadType", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "upload_protocol", new Google.Apis.Discovery.Parameter - { - Name = "upload_protocol", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - - /// The "photo" collection of methods. - public class PhotoResource - { - private const string Resource = "photo"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public PhotoResource(Google.Apis.Services.IClientService service) - { - this.service = service; - - } - - - /// After the client finishes uploading the photo with the returned `UploadRef`, `photo.create` - /// publishes the uploaded photo to Street View on Google Maps. - /// - /// This method returns the following error codes: - /// - /// * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the upload reference does not - /// exist. - /// The body of the request. - public virtual CreateRequest Create(Google.Apis.StreetViewPublish.v1.Data.Photo body) - { - return new CreateRequest(service, body); - } - - /// After the client finishes uploading the photo with the returned `UploadRef`, `photo.create` - /// publishes the uploaded photo to Street View on Google Maps. - /// - /// This method returns the following error codes: - /// - /// * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the upload reference does not - /// exist. - public class CreateRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.StreetViewPublish.v1.Data.Photo body) - : base(service) - { - Body = body; - InitParameters(); - } - - - - /// Gets or sets the body of this request. - Google.Apis.StreetViewPublish.v1.Data.Photo 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 "create"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "POST"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photo"; } - } - - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - } - - } - - /// Deletes a photo and its metadata. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `NOT_FOUND` if the photo - /// ID does not exist. - /// Required. ID of the photo. - public virtual DeleteRequest Delete(string photoId) - { - return new DeleteRequest(service, photoId); - } - - /// Deletes a photo and its metadata. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `NOT_FOUND` if the photo - /// ID does not exist. - public class DeleteRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string photoId) - : base(service) - { - PhotoId = photoId; - InitParameters(); - } - - - /// Required. ID of the photo. - [Google.Apis.Util.RequestParameterAttribute("photoId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PhotoId { get; private set; } - - - ///Gets the method name. - public override string MethodName - { - get { return "delete"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "DELETE"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photo/{photoId}"; } - } - - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "photoId", new Google.Apis.Discovery.Parameter - { - Name = "photoId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - - } - - /// Gets the metadata of the specified `Photo`. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `NOT_FOUND` if the - /// requested photo does not exist. - /// Required. ID of the photo. - public virtual GetRequest Get(string photoId) - { - return new GetRequest(service, photoId); - } - - /// Gets the metadata of the specified `Photo`. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `NOT_FOUND` if the - /// requested photo does not exist. - public class GetRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string photoId) - : base(service) - { - PhotoId = photoId; - InitParameters(); - } - - - /// Required. ID of the photo. - [Google.Apis.Util.RequestParameterAttribute("photoId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PhotoId { get; private 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)] - public virtual System.Nullable View { get; set; } - - /// Specifies if a download URL for the photo bytes should be returned in the Photo - /// response. - public enum ViewEnum - { - [Google.Apis.Util.StringValueAttribute("BASIC")] - BASIC, - [Google.Apis.Util.StringValueAttribute("INCLUDE_DOWNLOAD_URL")] - INCLUDEDOWNLOADURL, - } - - - ///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 "v1/photo/{photoId}"; } - } - - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "photoId", new Google.Apis.Discovery.Parameter - { - Name = "photoId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter - { - Name = "view", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - - } - - /// Creates an upload session to start uploading photo data. The upload URL of the returned `UploadRef` - /// is used to upload the data for the photo. - /// - /// In addition to the photo requirements shown in - /// https://support.google.com/maps/answer/7012050?hl=en_topic=6275604, the photo must also meet the following - /// requirements: - /// - /// * Photo Sphere XMP metadata must be included in the photo medadata. See - /// https://developers.google.com/streetview/spherical-metadata for the required fields. * The pixel size of the - /// photo must meet the size requirements listed in - /// https://support.google.com/maps/answer/7012050?hl=en_topic=6275604, and the photo must be a full 360 - /// horizontally. - /// - /// After the upload is complete, the `UploadRef` is used with `StreetViewPublishService:CreatePhoto()` to - /// create the `Photo` object entry. - /// The body of the request. - public virtual StartUploadRequest StartUpload(Google.Apis.StreetViewPublish.v1.Data.Empty body) - { - return new StartUploadRequest(service, body); - } - - /// Creates an upload session to start uploading photo data. The upload URL of the returned `UploadRef` - /// is used to upload the data for the photo. - /// - /// In addition to the photo requirements shown in - /// https://support.google.com/maps/answer/7012050?hl=en_topic=6275604, the photo must also meet the following - /// requirements: - /// - /// * Photo Sphere XMP metadata must be included in the photo medadata. See - /// https://developers.google.com/streetview/spherical-metadata for the required fields. * The pixel size of the - /// photo must meet the size requirements listed in - /// https://support.google.com/maps/answer/7012050?hl=en_topic=6275604, and the photo must be a full 360 - /// horizontally. - /// - /// After the upload is complete, the `UploadRef` is used with `StreetViewPublishService:CreatePhoto()` to - /// create the `Photo` object entry. - public class StartUploadRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new StartUpload request. - public StartUploadRequest(Google.Apis.Services.IClientService service, Google.Apis.StreetViewPublish.v1.Data.Empty body) - : base(service) - { - Body = body; - InitParameters(); - } - - - - /// Gets or sets the body of this request. - Google.Apis.StreetViewPublish.v1.Data.Empty 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 "startUpload"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "POST"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photo:startUpload"; } - } - - /// Initializes StartUpload parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - } - - } - - /// Updates the metadata of a photo, such as pose, place association, etc. Changing the pixels of a - /// photo is not supported. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `INVALID_ARGUMENT` if the - /// request is malformed. * `NOT_FOUND` if the photo ID does not exist. - /// The body of the request. - /// Required. A base64 encoded identifier. - public virtual UpdateRequest Update(Google.Apis.StreetViewPublish.v1.Data.Photo body, string id) - { - return new UpdateRequest(service, body, id); - } - - /// Updates the metadata of a photo, such as pose, place association, etc. Changing the pixels of a - /// photo is not supported. - /// - /// This method returns the following error codes: - /// - /// * `PERMISSION_DENIED` if the requesting user did not create the requested photo. * `INVALID_ARGUMENT` if the - /// request is malformed. * `NOT_FOUND` if the photo ID does not exist. - public class UpdateRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new Update request. - public UpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.StreetViewPublish.v1.Data.Photo body, string id) - : base(service) - { - Id = id; - Body = body; - InitParameters(); - } - - - /// Required. A base64 encoded identifier. - [Google.Apis.Util.RequestParameterAttribute("id", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Id { get; private set; } - - /// Mask that identifies fields on the photo metadata to update. If not present, the old Photo - /// metadata will be entirely replaced with the new Photo metadata in this request. The update fails if - /// invalid fields are specified. Multiple fields can be specified in a comma-delimited list. - /// - /// The following fields are valid: - /// - /// * `pose.heading` * `pose.latlngpair` * `pose.pitch` * `pose.roll` * `pose.level` * `pose.altitude` * - /// `connections` * `places` - /// - /// Note: Repeated fields in `update_mask` mean the entire set of repeated values will be replaced with the - /// new contents. For example, if `UpdatePhotoRequest.photo.update_mask` contains `connections` and - /// `UpdatePhotoRequest.photo.connections` is empty, all connections will be removed. - [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.StreetViewPublish.v1.Data.Photo 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 "v1/photo/{id}"; } - } - - /// Initializes Update parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "id", new Google.Apis.Discovery.Parameter - { - Name = "id", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter - { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - - } - } - - /// The "photos" collection of methods. - public class PhotosResource - { - private const string Resource = "photos"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public PhotosResource(Google.Apis.Services.IClientService service) - { - this.service = service; - - } - - - /// Deletes a list of photos and their metadata. - /// - /// Note that if `photos.batchDelete` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchDelete` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchDeletePhotosResponse.status`. See `photo.update` for specific - /// failures that can occur per photo. - /// The body of the request. - public virtual BatchDeleteRequest BatchDelete(Google.Apis.StreetViewPublish.v1.Data.BatchDeletePhotosRequest body) - { - return new BatchDeleteRequest(service, body); - } - - /// Deletes a list of photos and their metadata. - /// - /// Note that if `photos.batchDelete` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchDelete` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchDeletePhotosResponse.status`. See `photo.update` for specific - /// failures that can occur per photo. - public class BatchDeleteRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new BatchDelete request. - public BatchDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.StreetViewPublish.v1.Data.BatchDeletePhotosRequest body) - : base(service) - { - Body = body; - InitParameters(); - } - - - - /// Gets or sets the body of this request. - Google.Apis.StreetViewPublish.v1.Data.BatchDeletePhotosRequest 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 "batchDelete"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "POST"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photos:batchDelete"; } - } - - /// Initializes BatchDelete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - } - - } - - /// Gets the metadata of the specified `Photo` batch. - /// - /// Note that if `photos.batchGet` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchGet` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchGetPhotosResponse.results.status`. See `photo.get` for specific - /// failures that can occur per photo. - public virtual BatchGetRequest BatchGet() - { - return new BatchGetRequest(service); - } - - /// Gets the metadata of the specified `Photo` batch. - /// - /// Note that if `photos.batchGet` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchGet` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchGetPhotosResponse.results.status`. See `photo.get` for specific - /// failures that can occur per photo. - public class BatchGetRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new BatchGet request. - public BatchGetRequest(Google.Apis.Services.IClientService service) - : base(service) - { - InitParameters(); - } - - - /// 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)] - public virtual System.Nullable View { get; set; } - - /// Specifies if a download URL for the photo bytes should be returned in the Photo - /// response. - public enum ViewEnum - { - [Google.Apis.Util.StringValueAttribute("BASIC")] - BASIC, - [Google.Apis.Util.StringValueAttribute("INCLUDE_DOWNLOAD_URL")] - 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 - { - get { return "batchGet"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "GET"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photos:batchGet"; } - } - - /// Initializes BatchGet parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter - { - Name = "view", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "photoIds", new Google.Apis.Discovery.Parameter - { - Name = "photoIds", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - - } - - /// Updates the metadata of photos, such as pose, place association, etc. Changing the pixels of a - /// photo is not supported. - /// - /// Note that if `photos.batchUpdate` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchUpdate` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchUpdatePhotosResponse.results.status`. See `UpdatePhoto` for - /// specific failures that can occur per photo. - /// The body of the request. - public virtual BatchUpdateRequest BatchUpdate(Google.Apis.StreetViewPublish.v1.Data.BatchUpdatePhotosRequest body) - { - return new BatchUpdateRequest(service, body); - } - - /// Updates the metadata of photos, such as pose, place association, etc. Changing the pixels of a - /// photo is not supported. - /// - /// Note that if `photos.batchUpdate` fails, either critical fields are missing or there was an authentication - /// error. Even if `photos.batchUpdate` succeeds, there may have been failures for single photos in the batch. - /// These failures will be specified in `BatchUpdatePhotosResponse.results.status`. See `UpdatePhoto` for - /// specific failures that can occur per photo. - public class BatchUpdateRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new BatchUpdate request. - public BatchUpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.StreetViewPublish.v1.Data.BatchUpdatePhotosRequest body) - : base(service) - { - Body = body; - InitParameters(); - } - - - - /// Gets or sets the body of this request. - Google.Apis.StreetViewPublish.v1.Data.BatchUpdatePhotosRequest 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 "batchUpdate"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "POST"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "v1/photos:batchUpdate"; } - } - - /// Initializes BatchUpdate parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - } - - } - - /// Lists all the photos that belong to the user. - public virtual ListRequest List() - { - return new ListRequest(service); - } - - /// Lists all the photos that belong to the user. - public class ListRequest : StreetViewPublishBaseServiceRequest - { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service) - : base(service) - { - InitParameters(); - } - - - /// 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 photos to return. `page_size` must be non-negative. If `page_size` is - /// zero or is not provided, the default page size of 100 will be used. The number of photos returned in the - /// response may be less than `page_size` if the number of photos that belong to the user is less than - /// `page_size`. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// Specifies if a download URL for the photos bytes should be returned in the Photos - /// response. - [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable View { get; set; } - - /// Specifies if a download URL for the photos bytes should be returned in the Photos - /// response. - public enum ViewEnum - { - [Google.Apis.Util.StringValueAttribute("BASIC")] - BASIC, - [Google.Apis.Util.StringValueAttribute("INCLUDE_DOWNLOAD_URL")] - INCLUDEDOWNLOADURL, - } - - /// The filter expression. Example: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw` - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { 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 "v1/photos"; } - } - - /// Initializes List parameter list. - 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 - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter - { - Name = "view", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter - { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - - } - } -} - -namespace Google.Apis.StreetViewPublish.v1.Data -{ - - /// Request to delete multiple photos. - public class BatchDeletePhotosRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. List of delete photo requests. For HTTP GET requests, the URL query parameter should be - /// `photoIds==&...`. - [Newtonsoft.Json.JsonPropertyAttribute("photoIds")] - public virtual System.Collections.Generic.IList PhotoIds { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response to batch delete of one or more photos. - public class BatchDeletePhotosResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The status for the operation to delete a single photo in the batch request. - [Newtonsoft.Json.JsonPropertyAttribute("status")] - public virtual System.Collections.Generic.IList Status { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response to batch get of photos. - public class BatchGetPhotosResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// List of results for each individual photo requested, in the same order as the request. - [Newtonsoft.Json.JsonPropertyAttribute("results")] - public virtual System.Collections.Generic.IList Results { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Request to update the metadata of photos. Updating the pixels of photos is not supported. - public class BatchUpdatePhotosRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. List of update photo requests. - [Newtonsoft.Json.JsonPropertyAttribute("updatePhotoRequests")] - public virtual System.Collections.Generic.IList UpdatePhotoRequests { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response to batch update of metadata of one or more photos. - public class BatchUpdatePhotosResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// List of results for each individual photo updated, in the same order as the request. - [Newtonsoft.Json.JsonPropertyAttribute("results")] - public virtual System.Collections.Generic.IList Results { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// A connection is the link from a source photo to a destination photo. - public class Connection : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. The destination of the connection from the containing photo to another photo. - [Newtonsoft.Json.JsonPropertyAttribute("target")] - public virtual PhotoId Target { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A - /// typical example is to use it as the request or the response type of an API method. For instance: - /// - /// service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } - /// - /// The JSON representation for `Empty` is empty JSON object `{}`. - public class Empty : Google.Apis.Requests.IDirectResponseSchema - { - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// An object representing a latitude/longitude pair. This is expressed as a pair of doubles representing - /// degrees latitude and degrees longitude. Unless specified otherwise, this must conform to the WGS84 standard. - /// Values must be within normalized ranges. - /// - /// Example of normalization code in Python: - /// - /// def NormalizeLongitude(longitude): Wraps decimal degrees longitude to [-180.0, 180.0]. q, r = divmod(longitude, - /// 360.0) if r > 180.0 or (r == 180.0 and q <= -1.0): return r - 360.0 return r - /// - /// def NormalizeLatLng(latitude, longitude): Wraps decimal degrees latitude and longitude to [-90.0, 90.0] and - /// [-180.0, 180.0], respectively. r = latitude % 360.0 if r <= 90.0: return r, NormalizeLongitude(longitude) elif r - /// >= 270.0: return r - 360, NormalizeLongitude(longitude) else: return 180 - r, NormalizeLongitude(longitude + - /// 180.0) - /// - /// assert 180.0 == NormalizeLongitude(180.0) assert -180.0 == NormalizeLongitude(-180.0) assert -179.0 == - /// NormalizeLongitude(181.0) assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) assert (0.0, 0.0) == - /// NormalizeLatLng(-360.0, 0.0) assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) assert (-85.0, -170.0) == - /// NormalizeLatLng(-95.0, 10.0) assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) assert (-90.0, -10.0) == - /// NormalizeLatLng(-90.0, -10.0) assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) assert (0.0, -170.0) == - /// NormalizeLatLng(180.0, 10.0) assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) assert (90.0, 10.0) == - /// NormalizeLatLng(-270.0, 10.0) - public class LatLng : Google.Apis.Requests.IDirectResponseSchema - { - /// The latitude in degrees. It must be in the range [-90.0, +90.0]. - [Newtonsoft.Json.JsonPropertyAttribute("latitude")] - public virtual System.Nullable Latitude { get; set; } - - /// The longitude in degrees. It must be in the range [-180.0, +180.0]. - [Newtonsoft.Json.JsonPropertyAttribute("longitude")] - public virtual System.Nullable Longitude { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Level information containing level number and its corresponding name. - public class Level : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. A name assigned to this Level, restricted to 3 characters. Consider how the elevator - /// buttons would be labeled for this level if there was an elevator. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } - - /// Floor number, used for ordering. 0 indicates the ground level, 1 indicates the first level above - /// ground level, -1 indicates the first level under ground level. Non-integer values are OK. - [Newtonsoft.Json.JsonPropertyAttribute("number")] - public virtual System.Nullable Number { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response to list all photos that belong to a user. - public class ListPhotosResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// Token to retrieve the next page of results, or empty if there are no more results in the - /// list. - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } - - /// List of photos. The maximum number of items returned is based on the `page_size` field in the - /// request. - [Newtonsoft.Json.JsonPropertyAttribute("photos")] - public virtual System.Collections.Generic.IList Photos { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Photo is used to store 360 photos along with photo metadata. - public class Photo : Google.Apis.Requests.IDirectResponseSchema - { - /// Absolute time when the photo was captured. When the photo has no exif timestamp, this is used to - /// set a timestamp in the photo metadata. - [Newtonsoft.Json.JsonPropertyAttribute("captureTime")] - public virtual object CaptureTime { get; set; } - - /// Connections to other photos. A connection represents the link from this photo to another - /// photo. - [Newtonsoft.Json.JsonPropertyAttribute("connections")] - public virtual System.Collections.Generic.IList Connections { get; set; } - - /// Output only. The download URL for the photo bytes. This field is set only when the `view` parameter - /// in a `GetPhotoRequest` is set to `INCLUDE_DOWNLOAD_URL`. - [Newtonsoft.Json.JsonPropertyAttribute("downloadUrl")] - public virtual string DownloadUrl { get; set; } - - /// Output only. Identifier for the photo, which is unique among all photos in Google. - [Newtonsoft.Json.JsonPropertyAttribute("photoId")] - public virtual PhotoId PhotoId { get; set; } - - /// Places where this photo belongs. - [Newtonsoft.Json.JsonPropertyAttribute("places")] - public virtual System.Collections.Generic.IList Places { get; set; } - - /// Pose of the photo. - [Newtonsoft.Json.JsonPropertyAttribute("pose")] - public virtual Pose Pose { get; set; } - - /// Output only. The share link for the photo. - [Newtonsoft.Json.JsonPropertyAttribute("shareLink")] - public virtual string ShareLink { get; set; } - - /// Output only. The thumbnail URL for showing a preview of the given photo. - [Newtonsoft.Json.JsonPropertyAttribute("thumbnailUrl")] - public virtual string ThumbnailUrl { get; set; } - - /// Required (when creating photo). Input only. The resource URL where the photo bytes are uploaded - /// to. - [Newtonsoft.Json.JsonPropertyAttribute("uploadReference")] - public virtual UploadRef UploadReference { get; set; } - - /// Output only. View count of the photo. - [Newtonsoft.Json.JsonPropertyAttribute("viewCount")] - public virtual System.Nullable ViewCount { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Identifier for a photo. - public class PhotoId : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. A base64 encoded identifier. - [Newtonsoft.Json.JsonPropertyAttribute("id")] - public virtual string Id { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response payload for a single `Photo` in batch operations including `BatchGetPhotosRequest` and - /// `BatchUpdatePhotosRequest`. - public class PhotoResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The photo resource, if the request was successful. - [Newtonsoft.Json.JsonPropertyAttribute("photo")] - public virtual Photo Photo { get; set; } - - /// The status for the operation to get or update a single photo in the batch request. - [Newtonsoft.Json.JsonPropertyAttribute("status")] - public virtual Status Status { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Place metadata for an entity. - public class Place : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. Place identifier, as described in https://developers.google.com/places/place- - /// id. - [Newtonsoft.Json.JsonPropertyAttribute("placeId")] - public virtual string PlaceId { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Raw pose measurement for an entity. - public class Pose : Google.Apis.Requests.IDirectResponseSchema - { - /// Altitude of the pose in meters above ground level (as defined by WGS84). NaN indicates an - /// unmeasured quantity. - [Newtonsoft.Json.JsonPropertyAttribute("altitude")] - public virtual System.Nullable Altitude { get; set; } - - /// Compass heading, measured at the center of the photo in degrees clockwise from North. Value must be - /// >=0 and <360. NaN indicates an unmeasured quantity. - [Newtonsoft.Json.JsonPropertyAttribute("heading")] - public virtual System.Nullable Heading { get; set; } - - /// Latitude and longitude pair of the pose, as explained here: - /// https://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng When creating a photo, if the - /// latitude and longitude pair are not provided here, the geolocation from the exif header will be used. If the - /// latitude and longitude pair is not provided and cannot be found in the exif header, the create photo process - /// will fail. - [Newtonsoft.Json.JsonPropertyAttribute("latLngPair")] - public virtual LatLng LatLngPair { get; set; } - - /// Level (the floor in a building) used to configure vertical navigation. - [Newtonsoft.Json.JsonPropertyAttribute("level")] - public virtual Level Level { get; set; } - - /// Pitch, measured at the center of the photo in degrees. Value must be >=-90 and <= 90. A value of - /// -90 means looking directly down, and a value of 90 means looking directly up. NaN indicates an unmeasured - /// quantity. - [Newtonsoft.Json.JsonPropertyAttribute("pitch")] - public virtual System.Nullable Pitch { get; set; } - - /// Roll, measured in degrees. Value must be >= 0 and <360. A value of 0 means level with the horizon. - /// NaN indicates an unmeasured quantity. - [Newtonsoft.Json.JsonPropertyAttribute("roll")] - public virtual System.Nullable Roll { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The `Status` type defines a logical error model that is suitable for different programming - /// environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model - /// is designed to be: - /// - /// - Simple to use and understand for most users - Flexible enough to meet unexpected needs - /// - /// # Overview - /// - /// The `Status` message contains three pieces of data: error code, error message, and error details. The error code - /// should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error - /// message should be a developer-facing English message that helps developers *understand* and *resolve* the error. - /// If a localized user-facing error message is needed, put the localized message in the error details or localize - /// it in the client. The optional error details may contain arbitrary information about the error. There is a - /// predefined set of error detail types in the package `google.rpc` that can be used for common error conditions. - /// - /// # Language mapping - /// - /// The `Status` message is the logical representation of the error model, but it is not necessarily the actual wire - /// format. When the `Status` message is exposed in different client libraries and different wire protocols, it can - /// be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped - /// to some error codes in C. - /// - /// # Other uses - /// - /// The error model and the `Status` message can be used in a variety of environments, either with or without APIs, - /// to provide a consistent developer experience across different environments. - /// - /// Example uses of this error model include: - /// - /// - Partial errors. If a service needs to return partial errors to the client, it may embed the `Status` in the - /// normal response to indicate the partial errors. - /// - /// - Workflow errors. A typical workflow has multiple steps. Each step may have a `Status` message for error - /// reporting. - /// - /// - Batch operations. If a client uses batch request and batch response, the `Status` message should be used - /// directly inside batch response, one for each error sub-response. - /// - /// - Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of - /// those operations should be represented directly using the `Status` message. - /// - /// - Logging. If some API errors are stored in logs, the message `Status` could be used directly after any - /// stripping needed for security/privacy reasons. - public class Status : Google.Apis.Requests.IDirectResponseSchema - { - /// The status code, which should be an enum value of google.rpc.Code. - [Newtonsoft.Json.JsonPropertyAttribute("code")] - public virtual System.Nullable Code { get; set; } - - /// A list of messages that carry the error details. There is a common set of message types for APIs - /// to use. - [Newtonsoft.Json.JsonPropertyAttribute("details")] - public virtual System.Collections.Generic.IList> Details { get; set; } - - /// 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. - [Newtonsoft.Json.JsonPropertyAttribute("message")] - public virtual string Message { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Request to update the metadata of a photo. Updating the pixels of a photo is not supported. - public class UpdatePhotoRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. Photo object containing the new metadata. Only the fields specified in `update_mask` are - /// used. If `update_mask` is not present, the update applies to all fields. Note: To update `pose.altitude`, - /// `pose.latlngpair` has to be filled as well. Otherwise, the request will fail. - [Newtonsoft.Json.JsonPropertyAttribute("photo")] - public virtual Photo Photo { get; set; } - - /// Mask that identifies fields on the photo metadata to update. If not present, the old Photo metadata - /// will be entirely replaced with the new Photo metadata in this request. The update fails if invalid fields - /// are specified. Multiple fields can be specified in a comma-delimited list. - /// - /// The following fields are valid: - /// - /// * `pose.heading` * `pose.latlngpair` * `pose.pitch` * `pose.roll` * `pose.level` * `pose.altitude` * - /// `connections` * `places` - /// - /// Note: Repeated fields in `update_mask` mean the entire set of repeated values will be replaced with the new - /// contents. For example, if `UpdatePhotoRequest.photo.update_mask` contains `connections` and - /// `UpdatePhotoRequest.photo.connections` is empty, all connections will be removed. - [Newtonsoft.Json.JsonPropertyAttribute("updateMask")] - public virtual object UpdateMask { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Upload reference for media files. - public class UploadRef : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. An upload reference should be unique for each user. It follows the form: - /// "https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}" - [Newtonsoft.Json.JsonPropertyAttribute("uploadUrl")] - public virtual string UploadUrl { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } -} 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 deleted file mode 100644 index 562b750722..0000000000 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.csproj +++ /dev/null @@ -1,84 +0,0 @@ - - - - - Google.Apis.StreetViewPublish.v1 Client Library - 1.27.1.923 - Google Inc. - Copyright 2017 Google Inc. - Google - https://github.com/google/google-api-dotnet-client - http://www.apache.org/licenses/LICENSE-2.0 - git - https://github.com/google/google-api-dotnet-client - - Google APIs Client Library for working with Streetviewpublish v1. - - Supported Platforms: - - .NET Framework 4.5+ - - NetStandard1.3, providing .NET Core support. - - Legacy platforms: - - .NET Framework 4.0 - - 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) - - More documentation on the API is available at: - https://developers.google.com/api-client-library/dotnet/apis/streetviewpublish/v1 - - The package source code is available at: - https://github.com/google/google-api-dotnet-client/tree/master/Src/Generated - - - - - - netstandard1.3;netstandard1.0;net45;net40 - true - true - ..\..\..\google.apis.snk - portable - true - true - true - 1570,1587,1591 - - - - - - - - - - portable-net45+win8+wpa81+wp8 - false - app.netstandard10.config - - - - - - - - - - - - - - false - app.net40.config - - - - - - - diff --git a/Src/Generated/Google.Apis.StreetViewPublish.v1/app.net40.config b/Src/Generated/Google.Apis.StreetViewPublish.v1/app.net40.config deleted file mode 100644 index bb30b7ab31..0000000000 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/app.net40.config +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Src/Generated/Google.Apis.StreetViewPublish.v1/app.netstandard10.config b/Src/Generated/Google.Apis.StreetViewPublish.v1/app.netstandard10.config deleted file mode 100644 index 62588d67ee..0000000000 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/app.netstandard10.config +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 00676befec..8fe1a27922 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. 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 d98a0827b1..f8d207ebc6 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.27.1.827 + 1.28.0.827 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 c93cd5ef47..b76d1eafb4 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.27.1 +// C# generator version: 1.28.0 // // 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 270bdc67b7..1a986766d4 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.27.1.434 + 1.28.0.434 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 0b21398f1b..388fd73316 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.27.1 +// C# generator version: 1.28.0 // // 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 3f95536dcf..ef2a9c9186 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.27.1.819 + 1.28.0.819 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.cs b/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.cs index a49e456e4b..9be90d334c 100644 --- a/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.cs +++ b/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.csproj b/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.csproj index 1e9dfccf59..996d4aad8f 100644 --- a/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Taskqueue.v1beta1/Google.Apis.Taskqueue.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Taskqueue.v1beta1 Client Library - 1.27.1.483 + 1.28.0.483 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.cs b/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.cs index 6a005255ea..7a292f4161 100644 --- a/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.cs +++ b/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.csproj b/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.csproj index 9eaa5a860e..1bc7be5ff1 100644 --- a/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Taskqueue.v1beta2/Google.Apis.Taskqueue.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Taskqueue.v1beta2 Client Library - 1.27.1.483 + 1.28.0.483 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7a6e0f6c0a..d555f3dc6c 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.27.1 +// C# generator version: 1.28.0 // // 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 e1b5b15f67..88320b211a 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.27.1.0 + 1.28.0.0 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + 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 b0f942bc14..f8a44d02b3 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.27.1.923 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.cs b/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.cs index 5819e7f5bc..e100f513d4 100644 --- a/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.cs +++ b/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.27.1 +// C# generator version: 1.28.0 // // 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 firstparty API * API Versionv1beta3firstparty - * API Rev20170712 (923) + * API Rev20170718 (929) * API Docs * * https://firebase.google.com/docs/test-lab/ @@ -3955,12 +3955,20 @@ public class SkippedDetail : Google.Apis.Requests.IDirectResponseSchema /// A stacktrace. public class StackTrace : Google.Apis.Requests.IDirectResponseSchema { + /// Exception cluster ID + [Newtonsoft.Json.JsonPropertyAttribute("clusterId")] + public virtual string ClusterId { get; set; } + /// The stack trace message. /// /// Required [Newtonsoft.Json.JsonPropertyAttribute("exception")] public virtual string Exception { get; set; } + /// Exception report ID + [Newtonsoft.Json.JsonPropertyAttribute("reportId")] + public virtual string ReportId { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.csproj b/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.csproj index a17aa6dbe1..af188ce73d 100644 --- a/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.csproj +++ b/Src/Generated/Google.Apis.ToolResults.v1beta3firstparty/Google.Apis.ToolResults.v1beta3firstparty.csproj @@ -3,7 +3,7 @@ Google.Apis.ToolResults.v1beta3firstparty Client Library - 1.27.1.923 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,7 @@ - + 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 ce16aa956c..62984ed474 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.27.1 +// C# generator version: 1.28.0 // // 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 Rev20170712 (923) + * API Rev20170718 (929) * API Docs * * https://firebase.google.com/docs/test-lab/ @@ -3961,12 +3961,20 @@ public class SkippedDetail : Google.Apis.Requests.IDirectResponseSchema /// A stacktrace. public class StackTrace : Google.Apis.Requests.IDirectResponseSchema { + /// Exception cluster ID + [Newtonsoft.Json.JsonPropertyAttribute("clusterId")] + public virtual string ClusterId { get; set; } + /// The stack trace message. /// /// Required [Newtonsoft.Json.JsonPropertyAttribute("exception")] public virtual string Exception { get; set; } + /// Exception report ID + [Newtonsoft.Json.JsonPropertyAttribute("reportId")] + public virtual string ReportId { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } 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 877b4fc247..dfa4fbdfcd 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -526,14 +526,14 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The language to use to return localized, human readable names of supported languages. - [Google.Apis.Util.RequestParameterAttribute("target", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Target { get; set; } - /// The model type for which supported languages should be returned. [Google.Apis.Util.RequestParameterAttribute("model", Google.Apis.Util.RequestParameterType.Query)] public virtual string Model { get; set; } + /// The language to use to return localized, human readable names of supported languages. + [Google.Apis.Util.RequestParameterAttribute("target", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Target { get; set; } + ///Gets the method name. public override string MethodName @@ -559,18 +559,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "target", new Google.Apis.Discovery.Parameter + "model", new Google.Apis.Discovery.Parameter { - Name = "target", + Name = "model", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "model", new Google.Apis.Discovery.Parameter + "target", new Google.Apis.Discovery.Parameter { - Name = "model", + Name = "target", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -630,17 +630,6 @@ 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; } @@ -662,6 +651,17 @@ 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( - "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, 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, 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 2c304ff832..2b608bfc60 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.27.1.875 + 1.28.0.875 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 5ea9f7e583..8d91cb8714 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.27.1 +// C# generator version: 1.28.0 // // 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 3515b642a0..158ca0e119 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.27.1.138 + 1.28.0.138 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6e1cab1de5..7be32663c6 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.27.1 +// C# generator version: 1.28.0 // // 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.v1/Google.Apis.Vision.v1.csproj b/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.csproj index 7c4a014933..eb1a310121 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.27.1.924 + 1.28.0.924 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 7dbcec65c6..dd2397df7e 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.27.1 +// C# generator version: 1.28.0 // // 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 d5dcd0eda5..329ea980fa 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.27.1.426 + 1.28.0.426 Google Inc. Copyright 2017 Google Inc. Google @@ -52,7 +52,7 @@ - + @@ -66,7 +66,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 d8807a7514..13947e0b88 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.27.1 +// C# generator version: 1.28.0 // // 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 da34d8927c..de7675e14b 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.27.1.878 + 1.28.0.878 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 c531fd0491..f5b4632ec3 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.27.1 +// C# generator version: 1.28.0 // // 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 e922c1feb9..a5af761d32 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.27.1.760 + 1.28.0.760 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 267267147d..3029b8840a 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * YouTube Analytics API * API Versionv1 - * API Rev20170715 (926) + * API Rev20170717 (928) * API Docs * * http://developers.google.com/youtube/analytics/ 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 a6e4f67cf2..eecb3e2f52 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.27.1.926 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 d5c13ae7f8..ce2caf97ac 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * YouTube Analytics API * API Versionv1beta1 - * API Rev20170715 (926) + * API Rev20170717 (928) * API Docs * * http://developers.google.com/youtube/analytics/ 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 e9a3094a81..f914000b6e 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.27.1.926 + 1.28.0.928 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 6757165da3..f9f0c286f1 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * YouTube Reporting API * API Versionv1 - * API Rev20170715 (926) + * API Rev20170718 (929) * API Docs * * https://developers.google.com/youtube/reporting/v1/reports/ @@ -514,11 +514,6 @@ 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; } - /// 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)] - public virtual System.Nullable PageSize { get; set; } - /// The content owner's external ID on which behalf the user is acting on. If not set, the user /// is acting for himself (his own channel). [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] @@ -533,16 +528,21 @@ public ListRequest(Google.Apis.Services.IClientService service, string jobId) [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)] + public virtual System.Nullable PageSize { get; set; } ///Gets the method name. @@ -578,36 +578,36 @@ protected override void InitParameters() 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, 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, @@ -623,9 +623,9 @@ 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, @@ -868,11 +868,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The content owner's external ID on which behalf the user is acting on. If not set, the user is - /// acting for himself (his own channel). - [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OnBehalfOfContentOwner { get; set; } - /// If set to true, also system-managed jobs will be returned; otherwise only user-created jobs /// will be returned. System-managed jobs can neither be modified nor deleted. [Google.Apis.Util.RequestParameterAttribute("includeSystemManaged", Google.Apis.Util.RequestParameterType.Query)] @@ -889,6 +884,11 @@ 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 content owner's external ID on which behalf the user is acting on. If not set, the user is + /// acting for himself (his own channel). + [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OnBehalfOfContentOwner { get; set; } + ///Gets the method name. public override string MethodName @@ -914,36 +914,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter + "includeSystemManaged", new Google.Apis.Discovery.Parameter { - Name = "onBehalfOfContentOwner", + Name = "includeSystemManaged", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "includeSystemManaged", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "includeSystemManaged", + 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 + "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "onBehalfOfContentOwner", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1119,6 +1119,11 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// The content owner's external ID on which behalf the user is acting on. If not set, the user is + /// acting for himself (his own channel). + [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OnBehalfOfContentOwner { get; set; } + /// If set to true, also system-managed report types will be returned; otherwise only the report /// types that can be used to create new reporting jobs will be returned. [Google.Apis.Util.RequestParameterAttribute("includeSystemManaged", Google.Apis.Util.RequestParameterType.Query)] @@ -1135,11 +1140,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 content owner's external ID on which behalf the user is acting on. If not set, the user is - /// acting for himself (his own channel). - [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OnBehalfOfContentOwner { get; set; } - ///Gets the method name. public override string MethodName @@ -1165,36 +1165,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "includeSystemManaged", new Google.Apis.Discovery.Parameter + "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter { - Name = "includeSystemManaged", + Name = "onBehalfOfContentOwner", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "includeSystemManaged", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "includeSystemManaged", 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( - "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "onBehalfOfContentOwner", + Name = "pageSize", 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 f224895d8b..d8ed30c95c 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.27.1.926 + 1.28.0.929 Google Inc. Copyright 2017 Google Inc. Google @@ -52,8 +52,8 @@ - - + + @@ -68,8 +68,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 ca4e93c1fd..f7e3a59a61 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.27.1 +// C# generator version: 1.28.0 // // 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.cs b/Src/Generated/Google.Apis.admin.Directory.directory_v1/Google.Apis.admin.Directory.directory_v1.cs index 4a95b9f150..5c9abcac4e 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.27.1 +// C# generator version: 1.28.0 // // 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.cs b/Src/Generated/Google.Apis.admin.Reports.reports_v1/Google.Apis.admin.Reports.reports_v1.cs index 6c07976cde..a3b242747c 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.27.1 +// C# generator version: 1.28.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated.